:root{
  --red:#e60018;--red-dark:#c90015;--navy:#073873;--blue:#1f63d4;--hero:#dceafd;--ink:#050505;--muted:#707070;--border:#d6d8dc;--soft:#f7f8fa;--success:#0b9148;--page:min(1336px,calc(100vw - 72px));
  font-family:Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#fff;color:var(--ink);overflow-x:hidden}body{-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}a{text-decoration:none;color:inherit}button,input{font:inherit}img,svg{display:block}.hidden{display:none!important}.muted{color:#767676}.ui-icon,.button-icon,.login-icon,.pill-icon{width:1em;height:1em;fill:none;stroke:currentColor;flex:0 0 auto}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;border-radius:10px;border:1px solid transparent;padding:0 24px;font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1;font-weight:700;cursor:pointer;white-space:nowrap}.btn:disabled{opacity:.48;cursor:not-allowed}.btn-primary{background:var(--red);color:#fff;border-color:var(--red)}.btn-primary:hover{background:var(--red-dark)}.btn-secondary{background:#fff;color:#111;border-color:#cfd2d6}.btn-success{background:#e5f5eb;color:#08743b;border-color:#b9ddc6}.btn-small{height:38px;padding:0 14px;font-size:13px}.inline-error{border:1px solid #ef9aa3;background:#fff0f2;color:#9b1425;border-radius:8px;padding:10px 12px;font-size:13px;font-weight:700}.page-shell{width:var(--page);margin:0 auto}
/* Header */
.site-header{height:100px;background:#f8fafc;border-bottom:1px solid #d6d8dc;box-shadow:0 2px 4px rgba(0,0,0,.14);position:relative;z-index:50}.header-inner{width:var(--page);height:100%;margin:auto;display:grid;grid-template-columns:360px minmax(430px,1fr) auto;gap:28px;align-items:center}.brand{width:360px;height:72px;display:flex;align-items:center}.brand img{width:100%;height:auto;max-height:72px;object-fit:contain}.nav{display:flex;justify-content:center;align-items:center;gap:30px;font-size:20px;font-weight:700;white-space:nowrap}.nav a:hover{color:var(--navy)}.header-actions{display:flex;align-items:center;justify-content:flex-end}.header-primary{width:274px;height:66px;border-radius:20px;font-size:20px;font-weight:700}.login-btn{height:56px;min-width:238px;border:1px solid #c8cbd0;border-radius:22px;background:#fff;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 22px;font-size:20px;font-weight:700;cursor:pointer}.login-icon{width:31px;height:31px}
/* login/admin modal */
.access-modal{position:fixed;inset:0;z-index:400;display:none}.access-modal.show{display:block}.access-backdrop{position:absolute;inset:0;background:rgba(5,18,37,.46);backdrop-filter:blur(2px)}.access-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 40px));background:#fff;border-radius:18px;padding:34px;box-shadow:0 25px 70px rgba(0,0,0,.26);text-align:center}.access-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:30px;color:#777;cursor:pointer}.access-icon{width:62px;height:62px;border-radius:50%;background:#e9f2ff;color:var(--navy);display:grid;place-items:center;margin:0 auto 14px}.access-icon svg{width:34px;height:34px}.access-card h2{margin:0 0 8px;font-size:26px}.access-card p{margin:0 0 22px;color:#667085;line-height:1.45}.admin-access,.customer-access{width:100%;margin-top:10px}.button-icon{width:24px;height:24px}
/* Steps */
.flow-main{padding:18px 0 30px;min-height:calc(100vh - 100px)}.stepper{width:min(790px,72vw);margin:0 auto 45px;display:grid;grid-template-columns:repeat(4,1fr)}.step{position:relative;text-align:center}.step-line{position:absolute;top:17px;left:-50%;width:100%;height:4px;background:#d4d4d4}.step:first-child .step-line{display:none}.step.done .step-line,.step.active .step-line{background:var(--red)}.step-bubble{position:relative;z-index:2;width:36px;height:36px;margin:auto;border-radius:50%;display:grid;place-items:center;background:#d2d2d2;color:#fff;font-size:18px;font-weight:700}.step.done .step-bubble{background:#ff5260}.step.active .step-bubble{background:var(--red)}.step-label{margin-top:7px;font-size:18px;font-weight:700;white-space:nowrap}.step.active .step-label{color:var(--red)}
/* HOME */
.home-stage{background:var(--hero);min-height:837px;position:relative;overflow:hidden;padding-bottom:24px}.home-login{position:absolute;right:max(36px,calc((100vw - 1336px)/2));top:15px;z-index:4}.home-main{width:var(--page);height:560px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.home-copy{padding-top:82px}.eyebrow{height:56px;display:inline-flex;align-items:center;border:1.5px solid #063f7c;border-radius:18px;color:#073974;padding:0 16px;font-size:18px;font-weight:700}.home-copy h1{margin:34px 0 30px;font-size:49px;line-height:1.15;letter-spacing:-1.05px;font-weight:800}.home-copy p{margin:0;font-size:18px;line-height:1.48;font-weight:700}.hero-cta{height:67px;min-width:274px;margin-top:28px;border-radius:18px;font-size:20px;font-weight:700;padding:0 34px}.hero-note{margin-top:29px;font-size:14px;font-weight:700}.home-art{height:520px;display:flex;align-items:center;justify-content:center;padding-top:83px}.home-art img{width:min(680px,100%);max-height:475px;object-fit:contain}.home-static{width:var(--page);margin:auto}.benefit-row{height:99px;border-radius:18px;background:rgba(255,255,255,.72);display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.benefit{height:64px;display:flex;align-items:center;justify-content:center;gap:15px;padding:0 28px;position:relative}.benefit:not(:last-child)::after{content:'';position:absolute;right:0;top:0;height:64px;width:1px;background:#d9dfe7}.round-blue{width:58px;height:58px;border-radius:50%;background:#0d4cac;color:#fff;display:grid;place-items:center;flex:0 0 auto}.round-blue svg{width:31px;height:31px}.benefit strong{font-size:18px}.benefit p{margin:6px 0 0;font-size:12.5px;line-height:1.35;font-weight:700}.home-steps-grid{margin-top:27px;height:132px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 255px;gap:38px}.how-card{position:relative;background:#fff;border:1px solid #c9cdd2;border-radius:10px;display:grid;grid-template-columns:86px 1fr;align-items:center;padding:12px 20px;box-shadow:0 1px 2px rgba(0,0,0,.03)}.step-num{position:absolute;left:14px;top:10px;width:25px;height:25px;border-radius:50%;background:#e9f2ff;color:#2d66ca;display:grid;place-items:center;font-size:13px;font-weight:800}.how-card strong{font-size:13px}.how-card p{font-size:11px;line-height:1.35;margin:8px 0 0}.pdf-mark{width:45px;height:40px;border-radius:4px;background:#ec1827;color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;margin-left:22px}.sliders-graphic{width:58px;height:50px;position:relative;margin-left:10px}.sliders-graphic i{position:absolute;left:4px;right:4px;height:4px;border-radius:4px;background:#d3d9e4}.sliders-graphic i:nth-child(1){top:9px}.sliders-graphic i:nth-child(2){top:23px}.sliders-graphic i:nth-child(3){top:37px}.sliders-graphic i::after{content:'';position:absolute;width:11px;height:11px;border-radius:50%;top:-3.5px;background:#1e63d6}.sliders-graphic i:nth-child(1)::after{left:31px}.sliders-graphic i:nth-child(2)::after{left:12px}.sliders-graphic i:nth-child(3)::after{left:38px;background:var(--red)}.pay-graphic{width:58px;height:50px;background:#d9eaff;border-radius:8px;display:grid;place-items:center;color:#0d4cac;margin-left:10px}.pay-graphic svg{width:34px;height:34px}.security-card{background:#0b3d7e;color:#fff;border-radius:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.security-card svg{width:35px;height:35px;margin-bottom:7px}.security-card strong{font-size:13px}.security-card p{font-size:10.5px;line-height:1.45;margin:7px 0 0}.home-footer{height:87px;background:#fff}.footer-inner{width:var(--page);height:100%;margin:auto;display:grid;grid-template-columns:auto auto 1px 1fr;align-items:center;gap:26px;color:#67799b}.footer-label{font-size:12px}.payment-logos{display:flex;align-items:center;gap:24px;color:#06356f}.mp-logo{display:flex;align-items:center;gap:5px;font-size:10px;line-height:.85}.mp-logo i{width:33px;height:22px;border:2px solid #1373bf;border-radius:50%;display:grid;place-items:center;font-size:19px}.visa{font-size:23px;font-style:italic}.mc{display:flex;width:39px}.mc i{width:24px;height:24px;border-radius:50%;background:#e51622}.mc i+ i{background:#f1a000;margin-left:-9px}.amex{font-size:8px;line-height:.9;color:#0875c9}.bank-transfer{font-size:8px;line-height:1.1}.footer-sep{height:44px;background:#d4d9e0}.footer-promises{display:flex;justify-content:space-between;align-items:center;font-size:11px}.footer-promises span{display:flex;align-items:center;gap:9px}.footer-promises svg{width:23px;height:23px;color:#3d6391}
/* Upload */
.upload-page .stepper{margin-bottom:44px}.upload-intro{text-align:center}.upload-intro h1{font-size:62px;line-height:1;margin:0 0 16px;font-weight:800;letter-spacing:-2px}.upload-intro p{font-size:29px;color:#727272;margin:0 0 48px;font-weight:700}.dropzone{width:min(1013px,100%);height:336px;margin:auto;border:2px dashed #6d91ff;border-radius:25px;background:linear-gradient(120deg,#fff 0%,#f3f8ff 75%,#fff 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:.15s}.dropzone.drag{border-color:var(--red);background:#fff6f7}.upload-cloud{width:64px;height:64px;color:#2466e5;margin-bottom:3px}.dropzone h2{font-size:31px;margin:0;font-weight:800}.dropzone .or{font-size:18px;color:#777;margin:3px 0}.upload-btn{height:52px;border-radius:12px;padding:0 31px;font-size:22px}.format-row{display:flex;align-items:center;gap:8px;margin-top:28px;font-size:16px}.format-row b{margin-right:7px}.fmt{width:25px;height:25px;border-radius:5px;display:grid;place-items:center;color:#fff;font-size:11px;font-weight:800}.fmt.pdf{background:#e5232b}.fmt.word{background:#185abd}.fmt.excel{background:#107c41}.fmt.ppt{background:#d24726}.dropzone small{font-size:14px;color:#707070;margin-top:17px}.upload-preview-note{width:min(1014px,100%);height:99px;margin:19px auto 0;background:#eaf2ff;border-radius:16px;display:grid;grid-template-columns:76px 1fr 120px;align-items:center;padding:0 30px;overflow:hidden}.note-icon{color:#2466e5}.note-icon svg{width:47px;height:47px}.upload-preview-note strong{font-size:20px}.upload-preview-note p{font-size:14px;color:#666;margin:8px 0 0}.preview-paper{justify-self:end;width:80px;height:95px;background:#fff;box-shadow:0 0 14px rgba(0,0,0,.08);transform:translateY(15px);padding:24px 14px}.preview-paper i{display:block;height:5px;background:#a7bfdc;margin:7px 0}.privacy-row{width:min(838px,86%);height:42px;margin:18px auto 0;display:flex;align-items:center;justify-content:center;gap:22px;font-size:15px;font-weight:700}.privacy-row span{display:flex;align-items:center;gap:10px}.privacy-row svg{width:24px;height:24px;color:#2c64dd}.privacy-sep{width:1px;height:30px;background:#bfc7d1}.upload-continue{text-align:center;margin-top:27px}.flow-continue,.flow-back{width:230px;height:55px;border-radius:12px;font-size:18px;font-weight:700}.upload-ready{width:min(1013px,100%);margin:11px auto 0;padding:9px 12px;border-radius:8px;background:#eaf7ef;border:1px solid #bfe2cb;color:#08783d;text-align:center;font-size:13px;font-weight:700}.upload-error{width:min(1013px,100%);margin:10px auto 0}
/* Config */
.config-page .stepper{margin-bottom:45px}.detected-bar{width:100%;min-height:98px;margin:0 auto 43px;border-radius:9px;border:1px solid #dedede;background:#f5f6f9;box-shadow:0 3px 4px rgba(0,0,0,.18);padding:15px 17px;display:grid;grid-template-columns:61px minmax(0,1fr) minmax(240px,324px);gap:17px;align-items:center}.robot-box{width:60px;height:57px;border-radius:10px;background:#cfd9e8;color:#0a356c;display:grid;place-items:center}.robot-box svg{width:39px;height:39px}.detected-title{font-size:15px;font-weight:800;margin-bottom:9px}.detected-items{display:flex;gap:clamp(18px,3vw,46px);font-size:14px;align-items:center;flex-wrap:wrap}.detected-items span:before{content:'✓';color:#069643;font-size:19px;font-weight:900;margin-right:9px}.eco-note{min-height:58px;border-left:1px solid #cdcdcd;padding:7px 0 0 35px;font-size:14px;line-height:1.45;font-weight:700}.config-columns{display:grid;grid-template-columns:minmax(300px,400px) minmax(440px,590px) minmax(230px,275px);gap:25px;align-items:start}.preview-card{height:609px;border:1px solid #eee;border-radius:9px;background:#fff;box-shadow:0 3px 8px rgba(0,0,0,.14);padding:17px 21px 16px}.file-head{height:60px;display:flex;align-items:center;gap:14px;min-width:0}.file-head>div{min-width:0}.file-head strong{display:block;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-head small{display:block;font-size:14px;color:#858585;margin-top:5px}.format-badge{width:42px;height:43px;border-radius:4px;display:grid;place-items:center;color:#fff;font-size:11px;font-weight:800;flex:0 0 auto}.format-badge.pdf{background:#e5232b}.format-badge.word{background:#185abd}.format-badge.excel{background:#107c41}.format-badge.ppt{background:#d24726}.preview-frame{width:100%;height:380px;margin:7px auto 0;background:#f7f8fa;border-radius:8px;padding:10px;overflow:hidden;display:flex;align-items:center;justify-content:center}.preview-frame img{width:72%;max-width:100%;max-height:100%;height:auto;object-fit:contain;box-shadow:0 2px 8px rgba(0,0,0,.12);transform-origin:center;transition:transform .12s ease}.preview-controls{height:54px;display:flex;align-items:center;justify-content:center;gap:21px}.preview-controls strong{font-size:14px;min-width:120px;text-align:center}.small-control{width:42px;height:40px;border-radius:8px;background:#fff;border:1px solid #c8c8c8;font-size:20px;cursor:pointer;display:grid;place-items:center}.small-control:disabled{opacity:.35}.small-control svg{width:26px;height:26px}.zoom-row{margin-top:-1px}.options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.option-card{height:108px;border:1px solid #d2d2d2;border-radius:9px;background:#fff;box-shadow:0 3px 5px rgba(0,0,0,.18);padding:11px 18px 10px;overflow:hidden}.option-card.tall{height:139px}.option-card.wide{grid-column:1/3;height:108px}.option-card h3{height:31px;margin:0 0 10px;display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700}.option-card h3 svg{width:31px;height:31px;flex:0 0 auto}.seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.seg.three{grid-template-columns:.86fr 1.68fr 1fr;gap:12px}.seg-btn{height:36px;border-radius:8px;border:1px solid #d0d0d0;background:#fff;color:#050505;font-size:13px;font-weight:400;padding:0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.seg-btn.selected{background:var(--red);border-color:var(--red);color:#fff;font-weight:700}.eco-chip{height:22px;margin-top:8px;border:1px solid #25a75c;border-radius:9px;background:#c8efd4;color:#158347;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.auto-btn{width:100%;margin-top:8px}.copies-box{height:36px;border:1px solid #d0d0d0;border-radius:8px;display:grid;grid-template-columns:40px 1fr 40px;overflow:hidden}.copies-box button,.copies-box input{border:0;background:#fff;text-align:center}.copies-box button{font-size:20px;cursor:pointer}.copies-box input{border-left:1px solid #ddd;border-right:1px solid #ddd;font-size:14px}.config-actions{height:80px;display:flex;align-items:flex-end;justify-content:center;gap:48px}.config-summary{height:609px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 3px 6px rgba(0,0,0,.18);padding:29px 23px 20px;position:relative}.config-summary h3{font-size:16px;margin:0 0 17px}.summary-rule{height:1px;background:#d7d7d7;margin:0 0 16px}.summary-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:24px}.summary-row strong{white-space:nowrap}.summary-total{display:flex;justify-content:space-between;align-items:center;margin-top:38px;font-size:14px;font-weight:800}.summary-total strong{font-size:27px;color:var(--red)}.no-hidden{position:absolute;left:18px;right:18px;bottom:20px;background:#eff9f1;border-radius:8px;padding:12px 13px;font-size:11px}.no-hidden b{color:#0d964d;font-size:12px}
/* Payment */
.payment-page .stepper{margin-bottom:74px}.payment-title-wrap{display:flex;align-items:center;gap:16px;margin:0 0 18px -25px}.payment-title-wrap h1{font-size:34px;margin:0 0 5px}.payment-title-wrap p{font-size:15px;font-weight:700;margin:0}.title-icon{width:58px;height:58px;border-radius:8px;display:grid;place-items:center}.title-icon.pink{background:#f4a0ab;color:#7e0c1b}.title-icon svg{width:35px;height:35px}.payment-grid{display:grid;grid-template-columns:minmax(0,670px) minmax(0,650px);gap:46px}.stack{display:grid;gap:12px}.detail-card{background:#fff;border:1px solid #d3d3d3;border-radius:9px;box-shadow:0 2px 4px rgba(0,0,0,.12)}.file-card{height:122px}.config-card{height:156px}.price-card{height:200px}.delivery-small-card{height:101px}.detail-row{height:100%;display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 20px}.detail-icon{width:60px;height:60px;border-radius:9px;display:grid;place-items:center}.detail-icon svg{width:38px;height:38px}.detail-icon.blue{background:#d3dce9;color:#073873}.detail-icon.green{background:#c7e8d4;color:#167c40}.detail-icon.lilac{background:#ead4ff;color:#7442b6}.detail-row h3{font-size:18px;margin:0 0 9px}.detail-row p{font-size:16px;line-height:1.5;margin:0}.view-file,.change-btn{height:40px;font-size:13px;font-weight:700;border-color:#97a5c1;background:#d5dfef;color:#073873}.view-file{width:128px}.change-btn{width:112px;color:#5635dd;background:#fff;border-color:#6f5bff}.chips{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.chip-break{flex-basis:100%;height:0}.config-pill{height:34px;border:1px solid #9eb0c8;background:#d8e1ed;border-radius:8px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;color:#073873;font-size:13px;font-weight:700}.pill-icon{width:21px;height:21px}.price-block{width:100%}.price-lines{max-width:460px}.price-line{display:flex;justify-content:space-between;font-size:17px;margin:7px 0}.price-big{border-top:1px dashed #777;margin-top:9px;padding-top:9px;display:flex;justify-content:space-between;align-items:center;font-size:25px;font-weight:800}.price-big strong{color:var(--red);font-size:25px}.delivery-link{color:#4c31f6}.pay-card{height:612px;border:1px solid #d3d3d3;border-radius:9px;box-shadow:0 2px 4px rgba(0,0,0,.13);padding:14px 20px 15px}.pay-card h2{display:flex;align-items:center;gap:10px;font-size:20px;margin:0 0 17px}.pay-heading-icon{width:31px;height:31px;color:#073873}.pay-choice{height:82px;border:1px solid #d4d4d4;border-radius:9px;display:flex;align-items:center;padding:0 16px;margin-bottom:11px;gap:13px;cursor:pointer}.pay-choice input{width:24px;height:24px;accent-color:var(--red)}.mp-handshake{width:58px;height:42px;border:2px solid #173cb4;border-radius:50%;display:grid;place-items:center;color:#173cb4;font-size:28px;background:#a8dcff}.pay-choice strong{font-size:16px}.pay-brands{margin-left:auto;display:flex;align-items:center;gap:28px}.pay-brands .visa{font-size:23px;color:#0d3b83;font-style:italic}.pay-brands .mc{display:flex;width:39px}.pay-brands .mc i{width:22px;height:22px;border-radius:50%;background:#e61c2a}.pay-brands .mc i+i{background:#f09f00;margin-left:-8px}.pay-brands .amex{font-size:7px;line-height:.9;color:#0875c9}.bank-wrap{display:flex;align-items:center;gap:14px}.bank-icon{width:52px;height:52px;border-radius:50%;background:#bfe5cf;color:#168047;display:grid;place-items:center}.bank-icon svg{width:31px;height:31px}.bank-alias{margin-left:auto;text-align:center;color:#6f6f6f;font-size:14px;font-weight:700}.contact-box{border:1px solid #ccd5e1;background:#f8fbff;border-radius:9px;padding:12px 14px;margin:12px 0}.contact-title{font-size:14px;font-weight:800;color:#073873;margin-bottom:8px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-field label{display:block;font-size:11px;font-weight:700;margin-bottom:4px}.contact-field input{width:100%;height:35px;border:1px solid #c7ccd3;border-radius:7px;padding:0 9px;font-size:13px}.contact-help{font-size:10px;color:#6d7783;margin-top:7px}.safe-panel{height:139px;background:#d7e9fb;border:1px solid #bfd3e9;border-radius:9px;display:grid;grid-template-columns:104px 1fr;align-items:center;padding:14px}.safe-icon{width:82px;height:82px;border-radius:50%;background:#c7def4;color:#025aa6;display:grid;place-items:center}.safe-icon svg{width:45px;height:45px}.safe-panel strong{font-size:22px;color:#073873}.safe-panel p{font-size:14px;line-height:1.45;font-weight:700;margin:13px 0 0}.terms{display:flex;gap:10px;align-items:flex-start;margin:10px 0;font-size:13px;font-weight:700}.terms input{width:22px;height:22px}.terms a{color:#2418f5}.pay-now{width:100%;height:62px;border-radius:8px;font-size:23px;font-weight:700}.pay-now .button-icon{width:28px;height:28px}.test-mode{text-align:center;font-size:9px;color:#999;margin-top:4px}.full-error{margin-top:6px}
/* Confirmation */
.confirm-page .stepper{margin-bottom:30px}.confirm-center{text-align:center}.confirm-check{width:70px;height:70px;border-radius:50%;background:#079541;color:#fff;display:grid;place-items:center;margin:0 auto 10px}.confirm-check svg{width:49px;height:49px}.confirm-center h1{font-size:38px;margin:0 0 6px}.confirm-center p{font-size:18px;color:#737373;font-weight:700;margin:0}.order-number{width:515px;height:88px;margin:35px auto 17px;border:1px solid #d3d3d3;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.12);display:flex;align-items:center;justify-content:space-between;padding:0 27px}.order-number small{display:block;font-size:14px;font-weight:700}.order-number strong{font-size:29px}.copy-code{height:38px;border:1px solid #6354ff;border-radius:8px;background:#fff;color:#3328fa;display:flex;align-items:center;gap:8px;padding:0 13px;font-size:13px;font-weight:700}.copy-code svg{width:22px;height:22px}.confirm-grid{display:grid;grid-template-columns:minmax(0,904px) minmax(0,356px);gap:37px}.confirm-order-card,.delivery-card{height:296px;border:1px solid #d1d1d1;border-radius:8px;background:#fff}.confirm-order-card{display:grid;grid-template-columns:380px 1fr;padding:22px 38px}.confirm-file{padding-right:37px;border-right:2px solid #d7d7d7}.confirm-file h2,.delivery-card h2{font-size:27px;margin:0 0 25px}.file-mini{display:grid;grid-template-columns:60px 1fr;gap:22px;align-items:center}.confirm-square{width:60px;height:60px;border-radius:8px;background:#d4deec;color:#073873;display:grid;place-items:center}.confirm-square svg{width:39px;height:39px}.file-mini strong{font-size:17px}.file-mini .muted{font-size:14px;margin-top:8px}.paid-total{border-top:1px solid #d3d3d3;margin-top:30px;padding-top:23px;display:flex;justify-content:space-between;align-items:start;font-size:18px;font-weight:700}.paid-total strong{font-size:24px;color:var(--red)}.spec-list{padding-left:43px;display:grid;grid-template-columns:1fr 1fr;gap:13px 38px;align-content:start;font-size:15px}.spec-key{display:flex;align-items:center;gap:10px;font-weight:700}.spec-mini-icon{width:25px;height:25px}.delivery-card{padding:22px 28px 17px}.delivery-item{display:grid;grid-template-columns:60px minmax(0,1fr);gap:18px;align-items:center;margin-bottom:15px;font-size:15px}.delivery-item strong{display:block;font-size:20px;margin-top:5px}.delivery-item small{display:block;font-size:12px;margin-top:4px}.notify-chip{min-height:20px;background:#bde2c7;color:#087c3f;font-size:10px;display:flex;align-items:center;justify-content:center;border-radius:4px;text-align:center;padding:4px 6px}.confirmation-actions{min-height:55px;margin:35px 0 13px;display:flex;justify-content:center;gap:49px}.flow-action{width:229px;height:55px;border-radius:12px;font-size:18px}.repeat-bar{min-height:103px;border:1px solid #d1d1d1;border-radius:8px;background:#f8f8f8;padding:13px 24px;display:grid;grid-template-columns:88px minmax(0,1fr) 229px;align-items:center}.repeat-icon{width:71px;height:70px;border-radius:8px;background:#ffe0e2;color:var(--red);display:grid;place-items:center;border:1px solid var(--red)}.repeat-icon svg{width:45px;height:45px}.repeat-bar strong{font-size:18px;line-height:1.35}.repeat-bar span{font-size:13px}.repeat-btn{width:229px;height:55px;border-radius:8px;font-size:17px}
/* Tracking / admin */
.track-wrap{width:min(900px,calc(100vw - 48px));margin:55px auto}.track-search{display:flex;gap:10px}.track-search input{flex:1;border:1px solid #ccd0d5;border-radius:10px;padding:14px}.timeline{display:grid;grid-template-columns:repeat(4,1fr);margin-top:32px}.timeline-step{text-align:center;position:relative}.timeline-step::after{content:'';position:absolute;left:50%;right:-50%;top:17px;height:4px;background:#ddd}.timeline-step:last-child::after{display:none}.timeline-dot{width:36px;height:36px;border-radius:50%;background:#ddd;color:#fff;display:grid;place-items:center;margin:auto;position:relative;z-index:2}.timeline-step.done .timeline-dot,.timeline-step.active .timeline-dot{background:var(--success)}.timeline-step.done::after{background:var(--success)}.timeline-label{margin-top:8px;font-weight:700;font-size:13px}.admin-body{background:#f5f7fb;min-height:100vh}.admin-wrap{width:min(1380px,96vw);margin:auto;padding:30px 0 70px}.admin-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.admin-head h1{font-size:38px;margin:0;color:var(--navy)}.admin-head p{margin:5px 0 0;color:#667085}.admin-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.kpi{background:#fff;border:1px solid #e4e7ec;border-radius:12px;padding:16px}.kpi small{color:#667085;font-weight:700}.kpi strong{display:block;font-size:28px;margin-top:6px}.admin-warning{background:#fff7df;border:1px solid #edcf86;border-radius:10px;padding:12px 15px;margin-bottom:18px;color:#684d00;font-size:13px}.order-grid{display:grid;gap:14px}.order{background:#fff;border:1px solid #e1e4e8;border-radius:12px;padding:18px;box-shadow:0 2px 6px rgba(0,0,0,.05)}.order-top{display:flex;justify-content:space-between;gap:12px}.order-code{font-size:20px;font-weight:900;color:var(--navy)}.badge{display:inline-flex;border-radius:999px;padding:7px 10px;background:#edf0f4;font-size:12px;font-weight:900}.badge.printing{background:#e5f0ff;color:#0e60c4}.badge.ready{background:#e3f5e9;color:#08773a}.badge.delivered{background:#eee;color:#555}.order-details{display:grid;grid-template-columns:1.6fr repeat(5,1fr);gap:15px;margin-top:14px;padding-top:14px;border-top:1px solid #eee;font-size:13px;color:#475467}.order-details strong{color:#171717}.order-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.empty{padding:50px;text-align:center;background:#fff;border:1px dashed #ccd2da;border-radius:12px;color:#667085}.admin-link{color:var(--blue);font-weight:700}.ready-notice{margin-top:12px;background:#e8f6ee;border:1px solid #b8e1c7;color:#0b6c39;border-radius:8px;padding:10px 12px;font-size:12px;font-weight:700}.toast{position:fixed;right:22px;bottom:22px;z-index:500;background:#0d2f60;color:#fff;border-radius:10px;padding:14px 18px;box-shadow:0 10px 30px rgba(0,0,0,.2);transform:translateY(18px);opacity:0;pointer-events:none;transition:.2s;font-weight:700;max-width:380px}.toast.show{transform:translateY(0);opacity:1}.toast.error{background:#a20e20}.toast.success{background:#08783d}

/* =========================================================
   v0.9.2 — RESPONSIVE MASTER ARTBOARD
   1440×1024 is the exact design reference. At that aspect ratio
   geometry is unchanged. Widescreen browsers gain logical width
   while the complete canvas keeps ONE uniform scale.
   ========================================================= */
:root{--page:1336px;--ep-canvas-w:1440px}
html,body{margin:0;background:#fff}
body.design-page{width:100%;height:100vh;min-height:0;overflow:hidden;display:flex;justify-content:center;align-items:flex-start}
.ep-stage{position:relative;flex:0 0 auto;overflow:hidden}
.ep-canvas{position:absolute;left:0;top:0;width:var(--ep-canvas-w);height:1024px;transform-origin:top left;background:#fff;overflow:hidden}
.design-page .page-shell,.design-page .header-inner,.design-page .home-main,.design-page .home-static,.design-page .footer-inner{width:1336px;max-width:none}
.design-page .stepper{width:790px}
.design-page .home-login{right:56px}
.design-page .site-header,.design-page .home-stage,.design-page .home-footer,.design-page .flow-main{max-width:none}
.design-page .flow-main{min-height:924px}
.design-page .access-modal{position:fixed}

/* Widescreen: use the space the monitor actually has instead of centering a
   narrow 1440 artboard with large blank bars. Elements keep normal proportions;
   only flexible columns/whitespace grow. */
html.ep-wide body.design-page .page-shell,
html.ep-wide body.design-page .header-inner,
html.ep-wide body.design-page .home-main,
html.ep-wide body.design-page .home-static,
html.ep-wide body.design-page .footer-inner{width:calc(var(--ep-canvas-w) - 104px)}
html.ep-wide body.design-page .home-login{right:52px}
html.ep-wide body.design-page .payment-grid{grid-template-columns:minmax(600px,1.03fr) minmax(570px,1fr)}
html.ep-wide body.design-page .config-columns{grid-template-columns:minmax(360px,1.45fr) minmax(500px,2.15fr) minmax(250px,1fr)}
html.ep-wide body.design-page .confirm-grid{grid-template-columns:minmax(760px,2.55fr) minmax(330px,1fr)}
html.ep-wide body.design-page .dropzone,
html.ep-wide body.design-page .upload-preview-note,
html.ep-wide body.design-page .upload-ready,
html.ep-wide body.design-page .upload-error{width:76%;max-width:none}
html.ep-wide body.design-page .privacy-row{width:63%;max-width:none}

/* Payment contact data: deliberately larger and readable. We recover the
   vertical room from the security panel, not by shrinking the form. */
.payment-page .pay-card{position:relative}
.payment-page .contact-box{height:90px;margin:0 0 9px;padding:7px 12px;border:1px solid #b9cbe1;background:#f5f9ff;border-radius:9px}
.payment-page .contact-title{font-size:12px;line-height:14px;margin-bottom:4px;font-weight:800;color:#073873}
.payment-page .contact-fields{gap:10px}
.payment-page .contact-field label{font-size:9px;line-height:10px;margin-bottom:2px}
.payment-page .contact-field input{height:30px;font-size:12px;padding:0 8px;border-radius:6px;background:#fff}
.payment-page .contact-help{display:block;font-size:9px;line-height:10px;margin-top:4px;color:#657487}
.payment-page .safe-panel{height:111px;grid-template-columns:82px 1fr;padding:12px}
.payment-page .safe-icon{width:62px;height:62px}
.payment-page .safe-icon svg{width:36px;height:36px}
.payment-page .safe-panel strong{font-size:18px}
.payment-page .safe-panel p{font-size:12px;line-height:1.35;margin:7px 0 0}

/* Keep the six selected options on the two rows shown in the reference. */
.payment-page .chips{gap:10px}
.payment-page .config-pill{height:32px;padding:0 9px;gap:6px;font-size:12px}
.payment-page .config-pill .pill-icon{width:18px;height:18px}

/* Brand artwork comes directly from the approved visual reference. */
.reference-payment-logos{gap:24px;transform:none}
.reference-payment-logos img{display:block;object-fit:contain;height:auto}
.reference-payment-logos img:nth-child(1){width:93px}
.reference-payment-logos img:nth-child(2){width:69px}
.reference-payment-logos img:nth-child(3){width:59px}
.reference-payment-logos img:nth-child(4){width:83px}
.reference-payment-logos img:nth-child(5){width:98px}
.mp-payment-logo{width:63px;height:42px;object-fit:contain;flex:0 0 auto}
.reference-card-brands{gap:24px}
.reference-card-brands img{display:block;object-fit:contain;height:auto}
.reference-card-brands img:nth-child(1){width:55px}
.reference-card-brands img:nth-child(2){width:47px}
.reference-card-brands img:nth-child(3){width:55px}

/* Tracking/admin stay independent from the five reference artboards. */
body:not(.design-page){overflow-x:auto}
@media(max-width:900px){
  body:not(.design-page) .admin-kpis{grid-template-columns:1fr 1fr}
  body:not(.design-page) .order-details{grid-template-columns:1fr 1fr}
}

/* =========================================================
   v0.9.3 — LEGIBILITY + STABLE ONE-BLOCK ZOOM
   The wide layout is detected once; after that, browser zoom changes only
   the outer artboard scale. No component-level responsive movement on zoom.
   ========================================================= */
body.design-page{width:100%;height:100vh;min-height:0;overflow:hidden;display:block;background:#fff}
.ep-stage{position:relative;width:100vw;height:100vh;overflow:hidden}
.ep-canvas{position:absolute;top:0;left:0;height:1024px;transform-origin:top left;background:#fff;overflow:hidden}
/* Fill any tiny rounding gutter with the correct page background. */
.flow-page .ep-stage{background:linear-gradient(to bottom,#f8fafc 0 var(--ep-header-screen,100px),#fff var(--ep-header-screen,100px) 100%)}
.home-page .ep-stage{background:linear-gradient(to bottom,#f8fafc 0 var(--ep-header-screen,100px),var(--hero) var(--ep-header-screen,100px) var(--ep-home-footer-top-screen,937px),#fff var(--ep-home-footer-top-screen,937px) 100%)}
/* Never let viewport units inside the artboard move content during Ctrl +/- . */
.design-page .detected-items{gap:34px}

/* Navigation and progress: moderate increase. */
.design-page .nav{font-size:22px}
.design-page .header-primary,.design-page .login-btn{font-size:22px}
.design-page .step-bubble{font-size:20px}
.design-page .step-label{font-size:20px}
.design-page .btn{font-size:20px}
.design-page .btn-small{font-size:15px}
.design-page .inline-error{font-size:15px}

/* HOME */
.home-page .eyebrow{font-size:20px}
.home-page .home-copy h1{font-size:52px;line-height:1.12}
.home-page .home-copy p{font-size:20px;line-height:1.42}
.home-page .hero-cta{font-size:22px}
.home-page .hero-note{font-size:16px}
.home-page .benefit strong{font-size:20px}
.home-page .benefit p{font-size:15px;line-height:1.28}
.home-page .step-num{font-size:15px}
.home-page .how-card strong{font-size:15px}
.home-page .how-card p{font-size:13px;line-height:1.28;margin-top:6px}
.home-page .pdf-mark{font-size:14px}
.home-page .security-card strong{font-size:15px}
.home-page .security-card p{font-size:12.5px;line-height:1.30;margin-top:5px}
.home-page .footer-label{font-size:14px}
.home-page .footer-promises{font-size:13px}
.home-page .mp-logo{font-size:12px}
.home-page .amex,.home-page .bank-transfer{font-size:10px}
/* Keep the exact 1024 artboard height even if enlarged text would otherwise
   make the home stage auto-grow by a few pixels. */
.design-page.home-page .home-stage{height:837px;min-height:837px}

/* UPLOAD */
.upload-page .upload-intro h1{font-size:64px}
.upload-page .upload-intro p{font-size:31px}
.upload-page .dropzone h2{font-size:34px}
.upload-page .dropzone .or{font-size:20px}
.upload-page .upload-btn{font-size:24px}
.upload-page .format-row{font-size:18px}
.upload-page .fmt{font-size:13px}
.upload-page .dropzone small{font-size:16px}
.upload-page .upload-preview-note{height:105px}
.upload-page .upload-preview-note strong{font-size:22px}
.upload-page .upload-preview-note p{font-size:15px;line-height:1.25;margin-top:6px}
.upload-page .privacy-row{font-size:17px;margin-top:14px}
.upload-page .flow-continue{font-size:20px}
.upload-page .upload-continue{margin-top:22px}
.upload-page .upload-ready{font-size:15px}

/* CONFIGURAR */
.config-page .detected-title{font-size:17px}
.config-page .detected-items{font-size:16px}
.config-page .eco-note{font-size:16px;line-height:1.38}
.config-page .file-head strong{font-size:19px}
.config-page .file-head small{font-size:16px}
.config-page .format-badge{font-size:13px}
.config-page .preview-controls strong{font-size:16px}
.config-page .option-card h3{font-size:18px}
/* Controls are crowded, so use a smaller increase than body copy. */
.config-page .seg-btn{font-size:14px;padding:0 8px}
.config-page .eco-chip{font-size:11.5px}
.config-page .copies-box input{font-size:16px;min-width:0;width:100%}
.config-page .copies-box button{min-width:0}
.config-page .config-summary h3{font-size:18px}
.config-page .summary-row{font-size:15px;margin-bottom:22px}
.config-page .summary-total{font-size:16px}
.config-page .summary-total strong{font-size:29px}
.config-page .no-hidden{font-size:13px}
.config-page .no-hidden b{font-size:14px}
.config-page .flow-back,.config-page .flow-continue{font-size:20px}

/* PAGO — keep selected configuration in two clean rows. */
.payment-page .payment-title-wrap h1{font-size:37px}
.payment-page .payment-title-wrap p{font-size:17px}
.payment-page .detail-row h3{font-size:20px}
.payment-page .detail-row p{font-size:18px;line-height:1.38}
.payment-page .view-file,.payment-page .change-btn{font-size:15px}
.payment-page .config-card{height:160px}
.payment-page .chips{display:grid;grid-template-columns:max-content max-content max-content;grid-auto-rows:34px;gap:10px;align-items:center;justify-content:start}
.payment-page .chip-break{display:none}
.payment-page .config-pill{height:34px;padding:0 10px;gap:6px;font-size:14px;justify-self:start}
.payment-page .config-pill .pill-icon{width:19px;height:19px}
.payment-page .price-card{height:196px}
.payment-page .price-line{font-size:19px;margin:6px 0}
.payment-page .price-big{font-size:27px}
.payment-page .price-big strong{font-size:27px}
.payment-page .pay-card h2{font-size:22px;margin-bottom:14px}
.payment-page .pay-choice strong{font-size:18px}
.payment-page .bank-alias{font-size:16px}
.payment-page .contact-box{height:108px;margin:0 0 8px;padding:9px 12px;border:1px solid #aebfd7;background:#f5f9ff;border-radius:9px}
.payment-page .contact-title{font-size:15px;line-height:17px;margin-bottom:6px}
.payment-page .contact-fields{gap:12px}
.payment-page .contact-field label{font-size:11px;line-height:12px;margin-bottom:3px}
.payment-page .contact-field input{height:36px;font-size:14px;padding:0 9px}
.payment-page .contact-help{font-size:11px;line-height:12px;margin-top:5px}
.payment-page .safe-panel{height:96px;grid-template-columns:72px 1fr;padding:10px 12px}
.payment-page .safe-icon{width:56px;height:56px}
.payment-page .safe-icon svg{width:33px;height:33px}
.payment-page .safe-panel strong{font-size:20px}
.payment-page .safe-panel p{font-size:14px;line-height:1.25;margin:5px 0 0}
.payment-page .terms{font-size:15px;line-height:1.25;margin:8px 0}
.payment-page .pay-now{height:58px;font-size:24px}
.payment-page .test-mode{font-size:11px;margin-top:2px}

/* CONFIRMACIÓN */
.confirm-page .confirm-center h1{font-size:41px}
.confirm-page .confirm-center p{font-size:20px}
.confirm-page .order-number small{font-size:16px}
.confirm-page .order-number strong{font-size:31px}
.confirm-page .copy-code{font-size:15px}
.confirm-page .confirm-file h2,.confirm-page .delivery-card h2{font-size:29px}
.confirm-page .file-mini strong{font-size:19px}
.confirm-page .file-mini .muted{font-size:16px}
.confirm-page .paid-total{font-size:20px}
.confirm-page .paid-total strong{font-size:26px}
.confirm-page .spec-list{font-size:17px;gap:11px 34px}
.confirm-page .delivery-item{font-size:17px}
.confirm-page .delivery-item strong{font-size:22px}
.confirm-page .delivery-item small{font-size:14px}
.confirm-page .notify-chip{font-size:12px}
.confirm-page .flow-action{font-size:20px}
.confirm-page .repeat-bar strong{font-size:20px}
.confirm-page .repeat-bar span{font-size:15px}
.confirm-page .repeat-btn{font-size:19px}
/* A few extra logical pixels prevent the enlarged orientation labels from touching the card edge. */
.config-page .option-card.tall{height:144px}
.config-page .config-actions{height:75px}

/* =========================================================
   v0.9.4 — LARGE TYPE + COMPACT UPLOAD ACTION ROW
   Preserve the one-block 1440×1024 artboard, but make the interface
   appreciably easier to read on real desktop browser viewports.
   ========================================================= */

/* Global navigation / workflow text */
.design-page .nav{font-size:25px}
.design-page .header-primary,.design-page .login-btn{font-size:24px}
.design-page .step-bubble{font-size:22px}
.design-page .step-label{font-size:23px}
.design-page .btn{font-size:22px}
.design-page .btn-small{font-size:17px}
.design-page .inline-error{font-size:17px}

/* HOME — stronger body copy and card text without changing the composition. */
.home-page .eyebrow{font-size:22px}
.home-page .home-copy h1{font-size:55px;line-height:1.08}
.home-page .home-copy p{font-size:23px;line-height:1.34}
.home-page .hero-cta{font-size:24px}
.home-page .hero-note{font-size:18px}
.home-page .benefit strong{font-size:23px}
.home-page .benefit p{font-size:17px;line-height:1.22}
.home-page .step-num{font-size:17px}
.home-page .how-card strong{font-size:17px}
.home-page .how-card p{font-size:15px;line-height:1.22;margin-top:5px}
.home-page .pdf-mark{font-size:15px}
.home-page .security-card strong{font-size:17px}
.home-page .security-card p{font-size:14px;line-height:1.22;margin-top:4px}
.home-page .footer-label{font-size:16px}
.home-page .footer-promises{font-size:15px}
.home-page .mp-logo{font-size:13px}
.home-page .amex,.home-page .bank-transfer{font-size:11px}

/* UPLOAD — move Continuar into the privacy strip and use the recovered height
   for larger type. */
.upload-page .stepper{margin-bottom:32px}
.upload-page .upload-intro h1{font-size:68px}
.upload-page .upload-intro p{font-size:34px;margin-bottom:34px}
.upload-page .dropzone{height:330px}
.upload-page .dropzone h2{font-size:38px}
.upload-page .dropzone .or{font-size:22px}
.upload-page .upload-btn{font-size:27px;height:56px}
.upload-page .format-row{font-size:21px;margin-top:22px}
.upload-page .fmt{font-size:14px}
.upload-page .dropzone small{font-size:18px;margin-top:13px}
.upload-page .upload-preview-note{height:103px;margin-top:15px}
.upload-page .upload-preview-note strong{font-size:25px}
.upload-page .upload-preview-note p{font-size:18px;line-height:1.20;margin-top:5px}
.upload-page .upload-bottom-row{width:min(1080px,100%);margin:12px auto 0;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:24px;align-items:center}
.upload-page .privacy-row{width:100%;height:58px;margin:0;justify-content:flex-start;gap:18px;font-size:19px}
.upload-page .privacy-row span{gap:9px}
.upload-page .privacy-row svg{width:27px;height:27px}
.upload-page .privacy-sep{height:34px}
.upload-page .upload-continue{margin:0;text-align:right}
.upload-page .flow-continue{width:230px;height:58px;font-size:23px}
.upload-page .upload-ready{font-size:17px}
html.ep-wide .upload-page .upload-bottom-row{width:76%;max-width:none}
html.ep-wide .upload-page .privacy-row{width:100%;max-width:none}

/* CONFIGURAR — larger labels and values; reclaim vertical room from large gaps. */
.config-page .stepper{margin-bottom:34px}
.config-page .detected-bar{margin-bottom:31px}
.config-page .detected-title{font-size:20px}
.config-page .detected-items{font-size:19px;gap:28px}
.config-page .eco-note{font-size:19px;line-height:1.28}
.config-page .file-head strong{font-size:22px}
.config-page .file-head small{font-size:18px}
.config-page .format-badge{font-size:15px}
.config-page .preview-controls strong{font-size:18px}
.config-page .option-card h3{font-size:21px}
.config-page .seg-btn{font-size:16px;padding:0 7px}
.config-page .eco-chip{font-size:13px}
.config-page .copies-box input{font-size:18px}
.config-page .config-summary h3{font-size:21px}
.config-page .summary-row{font-size:18px;margin-bottom:19px}
.config-page .summary-total{font-size:19px;margin-top:28px}
.config-page .summary-total strong{font-size:32px}
.config-page .no-hidden{font-size:15px}
.config-page .no-hidden b{font-size:16px}
.config-page .flow-back,.config-page .flow-continue{font-size:23px}

/* PAGO — body text gets a substantial increase while dense pills remain safe. */
.payment-page .stepper{margin-bottom:52px}
.payment-page .payment-title-wrap h1{font-size:41px}
.payment-page .payment-title-wrap p{font-size:20px}
.payment-page .detail-row h3{font-size:23px}
.payment-page .detail-row p{font-size:20px;line-height:1.30}
.payment-page .view-file,.payment-page .change-btn{font-size:17px}
.payment-page .config-pill{font-size:15px}
.payment-page .price-line{font-size:21px}
.payment-page .price-big{font-size:30px}
.payment-page .price-big strong{font-size:30px}
.payment-page .pay-card h2{font-size:25px}
.payment-page .pay-choice strong{font-size:21px}
.payment-page .bank-alias{font-size:18px}
.payment-page .contact-title{font-size:18px;line-height:20px}
.payment-page .contact-field label{font-size:13px;line-height:14px}
.payment-page .contact-field input{font-size:17px}
.payment-page .contact-help{font-size:13px;line-height:14px}
.payment-page .safe-panel strong{font-size:22px}
.payment-page .safe-panel p{font-size:16px;line-height:1.20}
.payment-page .terms{font-size:17px;line-height:1.20}
.payment-page .pay-now{font-size:26px}
.payment-page .test-mode{font-size:12px}

/* CONFIRMACIÓN */
.confirm-page .stepper{margin-bottom:24px}
.confirm-page .confirm-center h1{font-size:45px}
.confirm-page .confirm-center p{font-size:23px}
.confirm-page .order-number small{font-size:18px}
.confirm-page .order-number strong{font-size:34px}
.confirm-page .copy-code{font-size:17px}
.confirm-page .confirm-file h2,.confirm-page .delivery-card h2{font-size:32px}
.confirm-page .file-mini strong{font-size:22px}
.confirm-page .file-mini .muted{font-size:18px}
.confirm-page .paid-total{font-size:23px}
.confirm-page .paid-total strong{font-size:29px}
.confirm-page .spec-list{font-size:20px;gap:10px 30px}
.confirm-page .delivery-item{font-size:19px}
.confirm-page .delivery-item strong{font-size:24px}
.confirm-page .delivery-item small{font-size:16px}
.confirm-page .notify-chip{font-size:14px}
.confirm-page .flow-action{font-size:23px}
.confirm-page .repeat-bar strong{font-size:23px}
.confirm-page .repeat-bar span{font-size:17px}
.confirm-page .repeat-btn{font-size:22px}


/* =========================================================
   v0.9.5 — CORRECCIONES DE LEGIBILIDAD Y ACOMODO FINO
   ========================================================= */

/* 1) Logo más legible y un poco más grande. */
.design-page .site-header{height:104px}
.design-page .header-inner{grid-template-columns:390px minmax(360px,1fr) auto;gap:24px}
.design-page .brand{width:390px;height:78px}
.design-page .brand img{width:100%;max-height:78px;object-fit:contain;image-rendering:auto}
.design-page .nav{font-size:23px;gap:26px}
.design-page .header-primary,.design-page .login-btn{font-size:23px}
.design-page .flow-main{padding-top:14px;min-height:920px}

/* 2–4) Stepper con una línea única y continua, correctamente centrada. */
.design-page .stepper{position:relative;width:820px;margin:0 auto 34px}
.design-page .stepper::before{content:'';position:absolute;left:12.5%;width:75%;top:18px;height:4px;background:#d4d4d4;border-radius:999px;z-index:0}
.design-page .stepper::after{content:'';position:absolute;left:12.5%;top:18px;height:4px;background:var(--red);border-radius:999px;z-index:1;width:0}
.design-page .stepper[data-current="2"]::after{width:25%}
.design-page .stepper[data-current="3"]::after{width:50%}
.design-page .stepper[data-current="4"]::after{width:75%}
.design-page .stepper .step-line{display:none !important}
.design-page .step{position:relative;z-index:2}
.design-page .step-bubble{position:relative;z-index:3}
.design-page .step-label{font-size:22px;margin-top:9px}

/* HOME — usar mejor el ancho y evitar que el bloque inferior quede tan abajo. */
.home-page .home-main{height:548px;gap:14px}
.home-page .home-copy{padding-top:76px}
.home-page .hero-note{margin-top:18px;font-size:17px}
.home-page .home-static{margin-top:-2px}
.home-page .benefit-row{height:108px}
.home-page .benefit{padding:0 22px;gap:14px}
.home-page .benefit strong{font-size:22px}
.home-page .benefit p{font-size:16px;line-height:1.24;margin-top:5px}
.home-page .home-steps-grid{gap:28px}
.home-page .how-card{grid-template-columns:78px 1fr;padding:12px 18px}
.home-page .how-card strong{font-size:17px}
.home-page .how-card p{font-size:14px;line-height:1.24;margin-top:6px}
.home-page .security-card strong{font-size:17px}
.home-page .security-card p{font-size:13px;line-height:1.25;margin-top:4px}
.home-page .footer-inner{gap:18px}
.home-page .footer-label{font-size:16px}
.home-page .footer-promises{font-size:14px;gap:18px}
.home-page .footer-promises span{white-space:nowrap}

/* UPLOAD — texto un poco más grande. */
.upload-page .stepper{margin-bottom:26px}
.upload-page .upload-intro h1{font-size:68px}
.upload-page .upload-intro p{font-size:32px;margin-bottom:40px}
.upload-page .dropzone h2{font-size:36px}
.upload-page .format-row{font-size:19px}
.upload-page .dropzone small{font-size:16px}
.upload-page .upload-preview-note strong{font-size:26px}
.upload-page .upload-preview-note p{font-size:18px}
.upload-page .privacy-row{font-size:18px}
.upload-page .flow-continue{font-size:21px}
.upload-page .upload-continue{align-self:center}
/* 6) Ya queda desactivado hasta cargar archivo. Refuerzo visual. */
.upload-page .flow-continue:disabled{opacity:.45;filter:grayscale(.08)}

/* CONFIGURAR — bajar apenas el tamaño para equilibrar densidad. */
.config-page .stepper{margin-bottom:30px}
.config-page .detected-title{font-size:16px}
.config-page .detected-items{font-size:15px}
.config-page .eco-note{font-size:15px;line-height:1.32}
.config-page .option-card h3{font-size:17px}
.config-page .seg-btn{font-size:13px}
.config-page .preview-controls strong{font-size:15px}
.config-page .config-summary h3{font-size:20px}
.config-page .summary-row{font-size:17px}
.config-page .summary-total{font-size:17px}
.config-page .summary-total strong{font-size:32px}
.config-page .no-hidden{font-size:12px}

/* PAGO — letra claramente más grande y entrega sin corte. */
.payment-page .stepper{margin-bottom:42px}
.payment-page .payment-grid{gap:34px}
.payment-page .detail-row{padding:16px 18px}
.payment-page .detail-row h3{font-size:24px;margin-bottom:8px}
.payment-page .detail-row p{font-size:21px;line-height:1.25}
.payment-page .view-file,.payment-page .change-btn{font-size:14px}
.payment-page .config-card{height:150px}
.payment-page .chips{gap:10px 12px}
.payment-page .config-pill{height:37px;font-size:16px;padding:0 12px}
.payment-page .price-card{height:204px}
.payment-page .price-line{font-size:21px;margin:5px 0}
.payment-page .price-big,.payment-page .price-big strong{font-size:31px}
.payment-page .delivery-small-card{height:108px}
.payment-page .delivery-inline{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:baseline}
.payment-page .delivery-time-inline{font-size:18px;font-weight:700;color:#222}
.payment-page .pay-card{height:620px}
.payment-page .pay-card h2{font-size:27px;margin-bottom:14px}
.payment-page .pay-choice strong{font-size:20px}
.payment-page .bank-alias{font-size:17px}
.payment-page .contact-box{height:122px;padding:10px 12px}
.payment-page .contact-title{font-size:17px;line-height:1.1}
.payment-page .contact-field label{font-size:12px;margin-bottom:4px}
.payment-page .contact-field input{height:40px;font-size:16px}
.payment-page .contact-help{font-size:12px;line-height:1.2}
.payment-page .safe-panel{height:98px}
.payment-page .safe-panel strong{font-size:23px}
.payment-page .safe-panel p{font-size:16px;line-height:1.18}
.payment-page .terms{font-size:16px;line-height:1.2;margin:9px 0}
.payment-page .pay-now{height:60px;font-size:25px}

/* CONFIRMACIÓN — más legible sin cortar la información. */
.confirm-page .stepper{margin-bottom:22px}
.confirm-page .confirm-grid{grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:24px}
.confirm-page .confirm-file h2,.confirm-page .delivery-card h2{font-size:31px}
.confirm-page .file-mini strong{font-size:20px}
.confirm-page .file-mini .muted{font-size:16px}
.confirm-page .paid-total{font-size:19px}
.confirm-page .paid-total strong{font-size:28px}
.confirm-page .spec-list{font-size:17px;gap:10px 28px}
.confirm-page .delivery-card{padding:20px 22px}
.confirm-page .delivery-item{gap:14px;font-size:17px}
.confirm-page .delivery-item strong{font-size:21px;line-height:1.15}
.confirm-page .delivery-item small{font-size:14px;line-height:1.2}
.confirm-page .notify-chip{font-size:12px;padding:5px 7px}


/* =========================================================
   v0.9.6 — TAMAÑOS MÍNIMOS DE LECTURA
   Criterio aplicado: textos secundarios >= 16px, cuerpo normal 18px,
   etiquetas auxiliares 14px como mínimo. Encabezados casi sin cambios.
   ========================================================= */

/* HOME */
.home-page .home-copy p{font-size:21px;line-height:1.38}
.home-page .hero-note{font-size:18px}
.home-page .benefit p{font-size:17px;line-height:1.22}
.home-page .how-card strong{font-size:18px}
.home-page .how-card p{font-size:16px;line-height:1.22}
.home-page .security-card p{font-size:15px;line-height:1.22}
.home-page .footer-label{font-size:16px}
.home-page .footer-promises{font-size:15px}

/* UPLOAD */
.upload-page .upload-intro p{font-size:33px}
.upload-page .dropzone .or{font-size:21px}
.upload-page .format-row{font-size:20px}
.upload-page .fmt{font-size:15px}
.upload-page .dropzone small{font-size:17px}
.upload-page .upload-preview-note p{font-size:19px;line-height:1.18}
.upload-page .privacy-row{font-size:19px}
.upload-page .upload-ready{font-size:18px}

/* CONFIGURAR */
.config-page .detected-title{font-size:17px}
.config-page .detected-items{font-size:17px}
.config-page .eco-note{font-size:16px;line-height:1.28}
.config-page .file-head strong{font-size:20px}
.config-page .file-head small{font-size:17px}
.config-page .preview-controls strong{font-size:16px}
.config-page .option-card h3{font-size:18px}
.config-page .seg-btn{font-size:15px}
.config-page .copies-box input{font-size:17px}
.config-page .eco-chip{font-size:14px}
.config-page .config-summary h3{font-size:22px}
.config-page .summary-row{font-size:18px}
.config-page .summary-total{font-size:18px}
.config-page .no-hidden{font-size:14px;line-height:1.25}
.config-page .no-hidden b{font-size:15px}

/* PAGO */
.payment-page .payment-title-wrap p{font-size:18px}
.payment-page .detail-row p{font-size:22px;line-height:1.24}
.payment-page .config-pill{font-size:17px}
.payment-page .price-line{font-size:22px}
.payment-page .delivery-time-inline{font-size:19px}
.payment-page .pay-choice strong{font-size:21px}
.payment-page .bank-alias{font-size:18px}
.payment-page .contact-title{font-size:18px}
.payment-page .contact-field label{font-size:14px;line-height:1.2}
.payment-page .contact-field input{font-size:17px}
.payment-page .contact-help{font-size:14px;line-height:1.2}
.payment-page .safe-panel p{font-size:17px;line-height:1.18}
.payment-page .terms{font-size:17px;line-height:1.18}

/* CONFIRMACIÓN */
.confirm-page .confirm-center p{font-size:21px}
.confirm-page .order-number small{font-size:16px}
.confirm-page .copy-code{font-size:16px}
.confirm-page .file-mini .muted{font-size:17px}
.confirm-page .spec-list{font-size:18px}
.confirm-page .delivery-item{font-size:18px}
.confirm-page .delivery-item small{font-size:16px}
.confirm-page .notify-chip{font-size:14px;line-height:1.2}
.confirm-page .repeat-bar span{font-size:16px}


/* =========================================================
   v0.9.7 — HOME: que el texto use mejor todo el ancho del cuadro
   ========================================================= */
.home-page .home-steps-grid{gap:24px}
.home-page .how-card{
  grid-template-columns:62px minmax(0,1fr);
  padding:12px 16px;
  column-gap:10px;
}
.home-page .how-card > div:last-child,
.home-page .how-card > span:last-child{
  width:100%;
  min-width:0;
}
.home-page .pdf-mark,
.home-page .sliders-graphic,
.home-page .pay-graphic{
  margin-left:0;
  justify-self:center;
}
.home-page .how-card strong,
.home-page .how-card p{
  display:block;
  width:100%;
  max-width:none;
}
.home-page .how-card strong{font-size:18px;line-height:1.15}
.home-page .how-card p{font-size:16px;line-height:1.18;margin-top:4px}


/* =========================================================
   v0.9.8 — HOME inferior: agrandar realmente el texto de los 3 cuadros
   ========================================================= */
.home-page .home-steps-grid{
  gap:22px;
  grid-template-columns:repeat(3,minmax(0,1fr)) 250px;
}
.home-page .how-card{
  grid-template-columns:54px minmax(0,1fr);
  padding:14px 16px 12px;
  column-gap:12px;
  height:100%;
}
.home-page .how-card .step-num{
  left:10px;
  top:9px;
}
.home-page .pdf-mark,
.home-page .sliders-graphic,
.home-page .pay-graphic{
  width:44px;
  height:44px;
  margin-left:0;
  justify-self:center;
  align-self:center;
}
.home-page .sliders-graphic i:nth-child(1){top:8px}
.home-page .sliders-graphic i:nth-child(2){top:20px}
.home-page .sliders-graphic i:nth-child(3){top:32px}
.home-page .how-card > div:last-child{
  width:100%;
  min-width:0;
}
.home-page .how-card strong{
  display:block;
  width:100%;
  font-size:20px;
  line-height:1.08;
  white-space:nowrap;
}
.home-page .how-card p{
  display:block;
  width:100%;
  font-size:18px;
  line-height:1.12;
  margin:5px 0 0;
}
.home-page .how-card p br{display:none}


/* =========================================================
   v0.9.9 — HOME inferior: texto aún más grande y con separación correcta
   ========================================================= */
.home-page .home-steps-grid{
  gap:20px;
  grid-template-columns:repeat(3,minmax(0,1fr)) 246px;
}
.home-page .how-card{
  grid-template-columns:48px minmax(0,1fr);
  column-gap:12px;
  padding:14px 14px 12px;
}
.home-page .pdf-mark,
.home-page .sliders-graphic,
.home-page .pay-graphic{
  width:40px;
  height:40px;
}
.home-page .pay-graphic svg{width:28px;height:28px}
.home-page .how-card strong{
  font-size:21px;
  line-height:1.05;
  white-space:nowrap;
}
.home-page .how-card p{
  font-size:19px;
  line-height:1.08;
  margin-top:5px;
  white-space:nowrap;
  letter-spacing:-0.1px;
}
.home-page .how-card p br{display:none}


/* =========================================================
   v0.9.10 — Footer promises un poco más juntas
   ========================================================= */
.home-page .footer-promises{
  justify-content:flex-start;
  gap:74px;
}


/* =========================================================
   v0.9.11 — Upload: agrandar letra del bloque informativo inferior
   ========================================================= */
.upload-page .upload-preview-note strong{
  font-size:28px;
  line-height:1.08;
}
.upload-page .upload-preview-note p{
  font-size:21px;
  line-height:1.16;
}
.upload-page .privacy-row{
  font-size:21px;
  line-height:1.15;
}
.upload-page .privacy-row span{
  gap:10px;
}


/* =========================================================
   v0.9.12 — Configurar impresión más grande, aunque haya scroll
   La página de configuración deja de forzarse a entrar entera en pantalla.
   Se escala por ancho (base 1440) y permite scroll vertical.
   ========================================================= */
body.design-page.config-page{
  height:auto;
  min-height:100vh;
  overflow-y:auto;
}
.config-page .ep-stage{
  height:auto;
  min-height:100vh;
  overflow:visible;
}
html.ep-scroll-page body.design-page.config-page{
  overflow-x:hidden;
}
/* Un pequeño plus adicional de legibilidad en esta página. */
.config-page .detected-title{font-size:18px}
.config-page .detected-items{font-size:18px}
.config-page .eco-note{font-size:17px}
.config-page .file-head strong{font-size:21px}
.config-page .file-head small{font-size:18px}
.config-page .preview-controls strong{font-size:17px}
.config-page .option-card h3{font-size:19px}
.config-page .seg-btn{font-size:16px}
.config-page .copies-box input{font-size:18px}
.config-page .config-summary h3{font-size:23px}
.config-page .summary-row{font-size:19px}
.config-page .summary-total{font-size:19px}
.config-page .summary-total strong{font-size:34px}
.config-page .no-hidden{font-size:15px}


/* =========================================================
   v0.9.13 — Config: header y pasos con tamaño visual anterior,
   y ajuste de Encuadernado para que entre el texto completo.
   ========================================================= */
html.ep-scroll-page body.design-page.config-page .site-header,
html.ep-scroll-page body.design-page.config-page .stepper{
  transform:scale(var(--ep-config-top-comp,1));
  transform-origin:top center;
}
html.ep-scroll-page body.design-page.config-page .site-header{
  margin-bottom:calc(-104px * (1 - var(--ep-config-top-comp,1)));
}
html.ep-scroll-page body.design-page.config-page .stepper{
  margin-bottom:calc(30px - 34px * (1 - var(--ep-config-top-comp,1)));
}
/* Mantener las medidas lógicas previas del encabezado/pasos de config. */
.config-page .site-header{height:104px}
.config-page .header-inner{grid-template-columns:390px minmax(360px,1fr) auto;gap:24px}
.config-page .brand{width:390px;height:78px}
.config-page .brand img{max-height:78px}
.config-page .nav{font-size:23px;gap:26px}
.config-page .step-label{font-size:22px}

/* Encuadernado: redistribuir espacio para que se lea completo. */
.config-page .option-card.wide{overflow:visible}
.config-page .seg.three{grid-template-columns:.84fr 1.56fr 1.20fr;gap:10px}
.config-page .option-card.wide .seg-btn{padding:0 8px;font-size:15px}
.config-page .option-card.wide .seg-btn:last-child{font-size:14px}


/* =========================================================
   v0.9.14 — Config: header full width again, and binding labels corrected
   ========================================================= */
/* En la página Config, la franja superior vuelve a ocupar todo el ancho.
   Se reduce visualmente el contenido interno, no el fondo del header. */
html.ep-scroll-page body.design-page.config-page .site-header{
  transform:none;
  height:calc(104px * var(--ep-config-top-comp,1));
  overflow:hidden;
  margin-bottom:0;
}
html.ep-scroll-page body.design-page.config-page .site-header .header-inner{
  transform:scale(var(--ep-config-top-comp,1));
  transform-origin:top center;
}
html.ep-scroll-page body.design-page.config-page .stepper{
  transform:scale(var(--ep-config-top-comp,1));
  transform-origin:top center;
  margin-bottom:calc(30px - 34px * (1 - var(--ep-config-top-comp,1)));
}

/* Encuadernado: asegurar que ambos textos salgan bien. */
.config-page .seg.three{grid-template-columns:.74fr 1.70fr 1.28fr;gap:9px}
.config-page .option-card.wide .seg-btn{padding:0 7px;font-size:14px}
.config-page .option-card.wide .seg-btn:nth-child(2){font-size:13.5px}
.config-page .option-card.wide .seg-btn:nth-child(3){font-size:13.5px}


/* =========================================================
   v0.9.15 — Config: header con el mismo despliegue horizontal que el resto
   El contenido interno del header seguía viéndose demasiado compacto al centro.
   Se compensa el ancho lógico antes del scale para que la distribución quede
   igual que en las demás páginas.
   ========================================================= */
html.ep-scroll-page body.design-page.config-page .site-header .header-inner{
  width:calc(1336px / var(--ep-config-top-comp,1));
  max-width:none;
}
html.ep-scroll-page body.design-page.config-page .site-header .header-actions{
  justify-content:flex-end;
}


/* =========================================================
   v0.9.16 — Página 3: header igual al resto / Página 2: mejor icono de carpeta
   ========================================================= */
/* Página 3 (Pago): dejar el encabezado exactamente con el mismo despliegue
   horizontal que la referencia mostrada. */
.payment-page .site-header{height:104px}
.payment-page .header-inner{width:1336px;max-width:none;grid-template-columns:390px minmax(360px,1fr) auto;gap:24px}
.payment-page .brand{width:390px;height:78px}
.payment-page .brand img{max-height:78px}
.payment-page .nav{font-size:23px;gap:26px}
.payment-page .login-btn{font-size:23px;height:56px;min-width:238px;border-radius:22px}

/* Página 2 (Configurar): icono de archivo tipo carpeta, más claro y más prolijo. */
.config-page .file-folder-badge{
  width:48px;
  height:48px;
  border-radius:8px;
  background:#d9e6fb;
  color:#1f63d4;
  display:grid;
  place-items:center;
  position:relative;
  flex:0 0 auto;
}
.config-page .folder-file-icon{width:30px;height:30px}
.config-page .folder-ext-tag{
  position:absolute;
  right:-8px;
  bottom:-6px;
  min-width:26px;
  height:18px;
  border-radius:9px;
  background:#e60018;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 6px;
  font-size:10px;
  font-weight:800;
  line-height:1;
  box-shadow:0 1px 2px rgba(0,0,0,.16);
}


/* =========================================================
   v0.9.17 — Config header exactamente como el resto + mejor icono en Upload
   ========================================================= */
/* Página 3 (Configurar): que el header se vea exactamente como en las demás
   páginas, sin compactarse al medio ni compensaciones internas. */
html.ep-scroll-page body.design-page.config-page .site-header,
html.ep-scroll-page body.design-page.config-page .site-header .header-inner,
html.ep-scroll-page body.design-page.config-page .stepper{
  transform:none;
}
html.ep-scroll-page body.design-page.config-page .site-header{
  height:104px;
  overflow:visible;
  margin-bottom:0;
}
html.ep-scroll-page body.design-page.config-page .site-header .header-inner{
  width:1336px;
  max-width:none;
  margin:auto;
  display:grid;
  grid-template-columns:390px minmax(360px,1fr) auto;
  gap:24px;
  align-items:center;
}
html.ep-scroll-page body.design-page.config-page .stepper{
  margin-bottom:30px;
}

/* Página 2 (Subir archivo): ícono más claro de carpeta/archivos en la nota. */
.upload-page .note-icon{
  color:#1f63d4;
}
.upload-page .note-icon svg{
  width:34px;
  height:34px;
}


/* =========================================================
   v0.9.18 — Upload con mejor iconografía y Config con header/pasos
   idénticos al resto, manteniendo el contenido de la página más grande.
   ========================================================= */

/* PÁGINA 2 — Subir archivo */
.upload-page .upload-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:0 26px;
}
.upload-page .upload-folder-btn-icon{
  width:26px;
  height:26px;
  flex:0 0 auto;
}
.upload-page .format-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-top:24px;
  flex-wrap:wrap;
}
.upload-page .format-item{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:20px;
  font-weight:700;
  white-space:nowrap;
}
.upload-page .format-item b{
  font-weight:700;
}
.upload-page .fmt{
  min-width:42px;
  width:auto;
  height:28px;
  padding:0 8px;
  border-radius:6px;
  font-size:12px;
  letter-spacing:.2px;
}
.upload-page .note-icon svg{
  width:38px;
  height:38px;
}

/* PÁGINA 3 — Configurar impresión
   El encabezado y la barra de progreso deben verse EXACTAMENTE con la misma
   escala visual que en las otras páginas. Se compensa solo esa zona superior.
   El resto de la página se mantiene más grande y con scroll. */
html.ep-scroll-page body.design-page.config-page .site-header{
  height:calc(104px * var(--ep-config-top-comp,1));
  overflow:hidden;
  margin-bottom:0;
}
html.ep-scroll-page body.design-page.config-page .site-header .header-inner{
  width:calc(1336px / var(--ep-config-top-comp,1));
  max-width:none;
  margin:auto;
  display:grid;
  grid-template-columns:calc(390px / var(--ep-config-top-comp,1)) minmax(calc(360px / var(--ep-config-top-comp,1)),1fr) auto;
  gap:calc(24px / var(--ep-config-top-comp,1));
  align-items:center;
  transform:scale(var(--ep-config-top-comp,1));
  transform-origin:top left;
}
html.ep-scroll-page body.design-page.config-page .brand{
  width:calc(390px / var(--ep-config-top-comp,1));
  height:calc(78px / var(--ep-config-top-comp,1));
}
html.ep-scroll-page body.design-page.config-page .brand img{
  max-height:calc(78px / var(--ep-config-top-comp,1));
}
html.ep-scroll-page body.design-page.config-page .nav{
  font-size:calc(23px / var(--ep-config-top-comp,1));
  gap:calc(26px / var(--ep-config-top-comp,1));
}
html.ep-scroll-page body.design-page.config-page .login-btn{
  font-size:calc(23px / var(--ep-config-top-comp,1));
  height:calc(56px / var(--ep-config-top-comp,1));
  min-width:calc(238px / var(--ep-config-top-comp,1));
  border-radius:calc(22px / var(--ep-config-top-comp,1));
  gap:calc(12px / var(--ep-config-top-comp,1));
  padding:0 calc(22px / var(--ep-config-top-comp,1));
}
html.ep-scroll-page body.design-page.config-page .login-icon{
  width:calc(31px / var(--ep-config-top-comp,1));
  height:calc(31px / var(--ep-config-top-comp,1));
}
html.ep-scroll-page body.design-page.config-page .stepper{
  width:calc(820px / var(--ep-config-top-comp,1));
  transform:scale(var(--ep-config-top-comp,1));
  transform-origin:top center;
  margin:0 auto calc(30px - 34px * (1 - var(--ep-config-top-comp,1)));
}


/* =========================================================
   v0.9.19 — Configurar impresión normalizada
   Solución definitiva: la página 3 deja de usar la mezcla de escalas.
   Header + barra de progreso quedan EXACTAMENTE con la misma estructura
   y tamaño visual que el resto. El contenido sigue grande y con scroll.
   ========================================================= */
html.ep-config-static body.design-page.config-page{
  display:block;
  width:100%;
  height:auto;
  min-height:100vh;
  overflow-x:hidden;
  overflow-y:auto;
  background:#fff;
}
html.ep-config-static body.design-page.config-page .ep-stage{
  position:relative;
  width:100%;
  height:auto;
  min-height:100vh;
  overflow:visible;
  background:linear-gradient(to bottom,#f8fafc 0 104px,#fff 104px 100%);
}
html.ep-config-static body.design-page.config-page .ep-canvas{
  position:relative;
  left:auto;
  top:auto;
  width:100%;
  height:auto;
  transform:none;
  overflow:visible;
  background:transparent;
}
/* Anular todas las compensaciones especiales previas del header/stepper. */
html.ep-config-static body.design-page.config-page .site-header,
html.ep-config-static body.design-page.config-page .site-header .header-inner,
html.ep-config-static body.design-page.config-page .stepper{
  transform:none !important;
}
html.ep-config-static body.design-page.config-page .site-header{
  height:104px !important;
  overflow:visible !important;
  margin-bottom:0 !important;
}
html.ep-config-static body.design-page.config-page .header-inner{
  width:1336px !important;
  max-width:none !important;
  margin:auto !important;
  display:grid !important;
  grid-template-columns:390px minmax(360px,1fr) auto !important;
  gap:24px !important;
  align-items:center !important;
}
html.ep-config-static body.design-page.config-page .brand{
  width:390px !important;
  height:78px !important;
}
html.ep-config-static body.design-page.config-page .brand img{
  width:100%;
  max-height:78px !important;
}
html.ep-config-static body.design-page.config-page .nav{
  font-size:23px !important;
  gap:26px !important;
}
html.ep-config-static body.design-page.config-page .login-btn{
  font-size:23px !important;
  height:56px !important;
  min-width:238px !important;
  border-radius:22px !important;
}
html.ep-config-static body.design-page.config-page .stepper{
  width:820px !important;
  margin:0 auto 30px !important;
}
html.ep-config-static body.design-page.config-page .flow-main{
  width:100%;
  min-height:auto;
  padding-top:14px;
}
html.ep-config-static body.design-page.config-page .page-shell,
html.ep-config-static body.design-page.config-page .config-columns,
html.ep-config-static body.design-page.config-page .detected-bar{
  width:1336px;
  max-width:none;
}


/* =========================================================
   v0.9.20 — Página 3 comparte EXACTAMENTE header/progreso con el resto.
   Config solo agrega altura debajo para mantener el contenido grande.
   ========================================================= */
html.ep-config-tall body.design-page.config-page{
  display:block;
  height:auto;
  min-height:100vh;
  overflow-x:hidden;
  overflow-y:auto;
}
html.ep-config-tall body.design-page.config-page .ep-stage{
  position:relative;
  overflow:hidden;
}
/* Desactivar cualquier compensación histórica de Config. */
html.ep-config-tall body.design-page.config-page .site-header,
html.ep-config-tall body.design-page.config-page .site-header .header-inner,
html.ep-config-tall body.design-page.config-page .stepper{
  transform:none !important;
}
html.ep-config-tall body.design-page.config-page .site-header{
  width:100% !important;
  height:104px !important;
  overflow:visible !important;
  margin:0 !important;
}
html.ep-config-tall body.design-page.config-page .header-inner{
  height:100% !important;
  grid-template-columns:390px minmax(360px,1fr) auto !important;
  gap:24px !important;
  align-items:center !important;
}
html.ep-config-tall body.design-page.config-page .brand{
  width:390px !important;
  height:78px !important;
}
html.ep-config-tall body.design-page.config-page .brand img{
  width:100% !important;
  max-height:78px !important;
}
html.ep-config-tall body.design-page.config-page .nav{
  font-size:23px !important;
  gap:26px !important;
}
html.ep-config-tall body.design-page.config-page .login-btn{
  height:56px !important;
  min-width:238px !important;
  border-radius:22px !important;
  font-size:23px !important;
}
html.ep-config-tall body.design-page.config-page .stepper{
  width:820px !important;
  margin:0 auto 30px !important;
}
/* En modo panorámico, header y contenido usan el mismo ancho extendido
   que las otras páginas. */
html.ep-wide.ep-config-tall body.design-page.config-page .header-inner,
html.ep-wide.ep-config-tall body.design-page.config-page .page-shell{
  width:calc(var(--ep-canvas-w) - 104px) !important;
  max-width:none !important;
}
html.ep-wide.ep-config-tall body.design-page.config-page .config-columns{
  grid-template-columns:minmax(360px,1.45fr) minmax(500px,2.15fr) minmax(250px,1fr);
}
/* La franja del header debe cubrir de punta a punta el lienzo. */
html.ep-config-tall body.design-page.config-page .site-header{
  background:#f8fafc !important;
}


/* =========================================================
   v0.9.22 — REFERENCIAS MAESTRAS NUEVAS (PÁGINAS 3, 4 Y 5)
   Estas reglas sustituyen los ajustes acumulados anteriores para estas
   tres páginas. Frame lógico: 1440×1024. Escalado: bloque único por ancho.
   ========================================================= */
html.ep-reference-1440 body.design-page{
  display:block !important;
  width:100% !important;
  height:auto !important;
  min-height:100vh !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  background:#fff !important;
}
html.ep-reference-1440 body.design-page .ep-stage{
  position:relative !important;
  width:100% !important;
  overflow:hidden !important;
  background:#fff !important;
}
html.ep-reference-1440 body.design-page .ep-canvas{
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:1440px !important;
  height:1024px !important;
  transform-origin:top left !important;
  overflow:hidden !important;
  background:#fff !important;
}

/* Header idéntico en 3, 4 y 5 */
html.ep-reference-1440 .site-header{height:100px !important;background:#f8fafc !important}
html.ep-reference-1440 .header-inner{
  width:1336px !important;height:100% !important;margin:0 auto !important;
  display:grid !important;grid-template-columns:360px minmax(430px,1fr) auto !important;
  gap:28px !important;align-items:center !important;transform:none !important;
}
html.ep-reference-1440 .brand{width:360px !important;height:72px !important}
html.ep-reference-1440 .brand img{width:100% !important;max-height:72px !important}
html.ep-reference-1440 .nav{font-size:20px !important;gap:30px !important}
html.ep-reference-1440 .login-btn{height:56px !important;min-width:238px !important;border-radius:22px !important;font-size:20px !important}

/* Stepper exacto: 960px, línea continua entre centros. */
html.ep-reference-1440 .flow-main{width:100% !important;min-height:924px !important;padding:18px 0 30px !important}
html.ep-reference-1440 .page-shell{width:1336px !important;max-width:none !important;margin:0 auto !important}
html.ep-reference-1440 .stepper{
  position:relative !important;width:960px !important;margin:0 auto !important;
  display:grid !important;grid-template-columns:repeat(4,1fr) !important;transform:none !important;
}
html.ep-reference-1440 .stepper::before{left:12.5% !important;width:75% !important;top:17px !important;height:4px !important}
html.ep-reference-1440 .stepper::after{left:12.5% !important;top:17px !important;height:4px !important}
html.ep-reference-1440 .step-bubble{width:36px !important;height:36px !important;font-size:18px !important}
html.ep-reference-1440 .step-label{font-size:18px !important;line-height:22px !important;margin-top:7px !important}
html.ep-reference-1440 .stepper[data-current="2"]::after{width:25% !important}
html.ep-reference-1440 .stepper[data-current="3"]::after{width:50% !important}
html.ep-reference-1440 .stepper[data-current="4"]::after{width:75% !important}

/* ---------------- PÁGINA 3 — CONFIGURAR ---------------- */
html.ep-reference-1440 .config-page .stepper{margin-bottom:51px !important}
html.ep-reference-1440 .config-page .detected-bar{
  width:1306px !important;height:98px !important;min-height:98px !important;margin:0 auto 43px !important;
  padding:15px 17px !important;grid-template-columns:61px minmax(0,1fr) 324px !important;gap:17px !important;
}
html.ep-reference-1440 .config-page .detected-title{font-size:16px !important;margin-bottom:9px !important}
html.ep-reference-1440 .config-page .detected-items{font-size:16px !important;gap:39px !important;flex-wrap:nowrap !important}
html.ep-reference-1440 .config-page .eco-note{font-size:14px !important;line-height:1.45 !important}
html.ep-reference-1440 .config-page .config-columns{
  width:1315px !important;margin:0 auto !important;display:grid !important;
  grid-template-columns:400px 590px 275px !important;gap:25px !important;align-items:start !important;
}
html.ep-reference-1440 .config-page .preview-card{width:400px !important;height:609px !important;padding:17px 21px 16px !important}
html.ep-reference-1440 .config-page .file-head strong{font-size:17px !important}
html.ep-reference-1440 .config-page .file-head small{font-size:14px !important}
html.ep-reference-1440 .config-page .preview-frame{height:380px !important}
html.ep-reference-1440 .config-page .preview-controls strong{font-size:14px !important}
html.ep-reference-1440 .config-page .config-center{margin-top:6px !important}
html.ep-reference-1440 .config-page .options-grid{grid-template-columns:repeat(2,290px) !important;gap:10px !important}
html.ep-reference-1440 .config-page .option-card{width:290px !important;height:108px !important;padding:11px 18px 10px !important;overflow:hidden !important}
html.ep-reference-1440 .config-page .option-card.tall{height:139px !important}
html.ep-reference-1440 .config-page .option-card.wide{width:590px !important;height:108px !important;grid-column:1/3 !important}
html.ep-reference-1440 .config-page .option-card h3{height:31px !important;margin:0 0 10px !important;font-size:24px !important;gap:9px !important}
html.ep-reference-1440 .config-page .option-card h3 svg{width:31px !important;height:31px !important}
html.ep-reference-1440 .config-page .binding-card h3{font-size:24px !important;gap:10px !important;white-space:nowrap !important}
html.ep-reference-1440 .config-page .binding-card h3 small{font-size:14px !important;font-weight:700 !important;margin-left:4px !important}
html.ep-reference-1440 .config-page .seg{gap:14px !important}
html.ep-reference-1440 .config-page .seg.three{grid-template-columns:129px 249px 147px !important;gap:12px !important}
html.ep-reference-1440 .config-page .seg-btn{height:36px !important;font-size:16px !important;font-weight:700 !important;padding:0 8px !important;text-overflow:clip !important}
html.ep-reference-1440 .config-page .eco-chip{height:22px !important;font-size:11px !important;margin-top:8px !important}
html.ep-reference-1440 .config-page .copies-box{height:36px !important;grid-template-columns:40px 1fr 40px !important}
html.ep-reference-1440 .config-page .copies-box input{font-size:16px !important}
html.ep-reference-1440 .config-page .config-summary{
  width:275px !important;height:603px !important;margin-left:-15px !important;margin-top:6px !important;
  padding:29px 23px 20px !important;
}
html.ep-reference-1440 .config-page .config-summary h3{font-size:18px !important;margin-bottom:17px !important}
html.ep-reference-1440 .config-page .summary-row{font-size:17px !important;margin-bottom:22px !important}
html.ep-reference-1440 .config-page .summary-total{font-size:18px !important;margin-top:38px !important}
html.ep-reference-1440 .config-page .summary-total strong{font-size:27px !important}
html.ep-reference-1440 .config-page .no-hidden{font-size:12px !important;left:18px !important;right:18px !important;bottom:20px !important}
html.ep-reference-1440 .config-page .no-hidden b{font-size:14px !important}
html.ep-reference-1440 .config-page .config-actions{height:113px !important;align-items:flex-end !important;gap:48px !important}
html.ep-reference-1440 .config-page .flow-back,html.ep-reference-1440 .config-page .flow-continue{width:230px !important;height:55px !important;font-size:18px !important}

/* ---------------- PÁGINA 4 — PAGO ---------------- */
html.ep-reference-1440 .payment-page .stepper{margin-bottom:39px !important}
html.ep-reference-1440 .payment-page .payment-title-wrap{margin:0 0 18px -25px !important;gap:16px !important}
html.ep-reference-1440 .payment-page .payment-title-wrap h1{font-size:34px !important;margin:0 0 5px !important}
html.ep-reference-1440 .payment-page .payment-title-wrap p{font-size:16px !important}
html.ep-reference-1440 .payment-page .payment-grid{grid-template-columns:670px 650px !important;gap:46px !important}
html.ep-reference-1440 .payment-page .stack{gap:12px !important}
html.ep-reference-1440 .payment-page .file-card{height:122px !important}
html.ep-reference-1440 .payment-page .config-card{height:156px !important}
html.ep-reference-1440 .payment-page .price-card{height:200px !important}
html.ep-reference-1440 .payment-page .delivery-small-card{height:134px !important}
html.ep-reference-1440 .payment-page .detail-row{grid-template-columns:68px minmax(0,1fr) auto !important;gap:18px !important;padding:16px 20px !important}
html.ep-reference-1440 .payment-page .detail-row h3{font-size:20px !important;margin-bottom:8px !important}
html.ep-reference-1440 .payment-page .detail-row p{font-size:18px !important;line-height:1.35 !important}
html.ep-reference-1440 .payment-page .config-pill{height:35px !important;font-size:16px !important;padding:0 12px !important}
html.ep-reference-1440 .payment-page .chips{gap:12px !important}
html.ep-reference-1440 .payment-page .price-line{font-size:20px !important;margin:6px 0 !important}
html.ep-reference-1440 .payment-page .price-big{font-size:25px !important}
html.ep-reference-1440 .payment-page .price-big strong{font-size:25px !important}
html.ep-reference-1440 .payment-page .delivery-inline{display:block !important}
html.ep-reference-1440 .payment-page .delivery-time-inline{display:block !important;font-size:20px !important;font-weight:400 !important;margin-top:3px !important}
html.ep-reference-1440 .payment-page .change-btn{font-size:18px !important;width:112px !important;height:40px !important}
html.ep-reference-1440 .payment-page .pay-card{width:650px !important;height:649px !important;padding:14px 20px 15px !important}
html.ep-reference-1440 .payment-page .pay-card h2{font-size:20px !important;margin:0 0 17px !important}
html.ep-reference-1440 .payment-page .pay-choice{height:82px !important;margin-bottom:11px !important}
html.ep-reference-1440 .payment-page .pay-choice strong{font-size:18px !important}
html.ep-reference-1440 .payment-page .bank-alias{font-size:19px !important;white-space:nowrap !important}
html.ep-reference-1440 .payment-page .contact-box{height:107px !important;margin:0 0 9px !important;padding:10px 10px 8px !important;background:#f7f8fa !important}
html.ep-reference-1440 .payment-page .contact-title{font-size:20px !important;line-height:24px !important;margin:0 0 8px !important}
html.ep-reference-1440 .payment-page .contact-fields{gap:6px !important}
html.ep-reference-1440 .payment-page .contact-field label{position:absolute !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important}
html.ep-reference-1440 .payment-page .contact-field input{height:52px !important;border:0 !important;border-radius:3px !important;background:#dedede !important;font-size:24px !important;font-weight:700 !important;color:#5f5f5f !important;padding:0 17px !important}
html.ep-reference-1440 .payment-page .contact-field input::placeholder{color:#696969 !important;opacity:1 !important}
html.ep-reference-1440 .payment-page .contact-help{display:none !important}
html.ep-reference-1440 .payment-page .safe-panel{height:120px !important;grid-template-columns:104px 1fr !important;padding:14px !important}
html.ep-reference-1440 .payment-page .safe-icon{width:82px !important;height:82px !important}
html.ep-reference-1440 .payment-page .safe-panel strong{font-size:22px !important}
html.ep-reference-1440 .payment-page .safe-panel p{font-size:16px !important;line-height:1.45 !important;margin:13px 0 0 !important}
html.ep-reference-1440 .payment-page .terms{font-size:18px !important;line-height:1.35 !important;margin:10px 0 14px !important;align-items:center !important}
html.ep-reference-1440 .payment-page .terms input{width:47px !important;height:47px !important;flex:0 0 auto !important}
html.ep-reference-1440 .payment-page .pay-now{height:61px !important;font-size:23px !important}
html.ep-reference-1440 .payment-page .test-mode{display:none !important}

/* ---------------- PÁGINA 5 — CONFIRMACIÓN ---------------- */
html.ep-reference-1440 .confirm-page .stepper{margin-bottom:29px !important}
html.ep-reference-1440 .confirm-page .confirm-check{width:70px !important;height:70px !important;margin:0 auto 10px !important}
html.ep-reference-1440 .confirm-page .confirm-center h1{font-size:38px !important;margin:0 0 6px !important}
html.ep-reference-1440 .confirm-page .confirm-center p{font-size:18px !important}
html.ep-reference-1440 .confirm-page .order-number{width:515px !important;height:88px !important;margin:35px auto 17px !important;padding:0 27px !important}
html.ep-reference-1440 .confirm-page .order-number small{font-size:14px !important}
html.ep-reference-1440 .confirm-page .order-number strong{font-size:29px !important}
html.ep-reference-1440 .confirm-page .copy-code{font-size:13px !important}
html.ep-reference-1440 .confirm-page .confirm-grid{grid-template-columns:904px 356px !important;gap:37px !important}
html.ep-reference-1440 .confirm-page .confirm-order-card,html.ep-reference-1440 .confirm-page .delivery-card{height:296px !important}
html.ep-reference-1440 .confirm-page .confirm-order-card{grid-template-columns:380px 1fr !important;padding:22px 38px !important}
html.ep-reference-1440 .confirm-page .confirm-file{padding-right:37px !important}
html.ep-reference-1440 .confirm-page .confirm-file h2,html.ep-reference-1440 .confirm-page .delivery-card h2{font-size:27px !important;margin:0 0 25px !important}
html.ep-reference-1440 .confirm-page .file-mini strong{font-size:17px !important}
html.ep-reference-1440 .confirm-page .file-mini .muted{font-size:14px !important}
html.ep-reference-1440 .confirm-page .paid-total{font-size:18px !important;margin-top:30px !important;padding-top:23px !important}
html.ep-reference-1440 .confirm-page .paid-total strong{font-size:24px !important}
html.ep-reference-1440 .confirm-page .spec-list{font-size:18px !important;gap:13px 38px !important;padding-left:43px !important}
html.ep-reference-1440 .confirm-page .delivery-card{padding:22px 28px 17px !important}
html.ep-reference-1440 .confirm-page .delivery-item{font-size:15px !important;gap:18px !important;margin-bottom:15px !important}
html.ep-reference-1440 .confirm-page .delivery-item strong{font-size:20px !important;margin-top:5px !important}
html.ep-reference-1440 .confirm-page .delivery-item small{font-size:12px !important}
html.ep-reference-1440 .confirm-page .notify-chip{font-size:16px !important;line-height:1.35 !important;min-height:48px !important;padding:4px 8px !important}
html.ep-reference-1440 .confirm-page .confirmation-actions{margin:35px 0 13px !important;gap:49px !important}
html.ep-reference-1440 .confirm-page .flow-action{width:229px !important;height:55px !important;font-size:18px !important}
html.ep-reference-1440 .confirm-page .repeat-bar{height:103px !important;min-height:103px !important;padding:13px 24px !important;grid-template-columns:88px minmax(0,1fr) 229px !important}
html.ep-reference-1440 .confirm-page .repeat-bar strong{font-size:18px !important}
html.ep-reference-1440 .confirm-page .repeat-bar span{font-size:13px !important}
html.ep-reference-1440 .confirm-page .repeat-btn{font-size:17px !important}

/* v0.9.22 final alignment */
html.ep-reference-1440 .confirm-page .page-shell{width:1296px !important;}
html.ep-reference-1440 .payment-page .title-icon svg{width:35px !important;height:35px !important;}


/* =========================================================
   v0.9.23 — Página 2 unificada + nuevo diseño página 3 + comprobante
   ========================================================= */
/* Página 2 usa desde ahora el MISMO header y stepper que 3, 4 y 5. */
html.ep-reference-1440 .upload-page .stepper{margin-bottom:44px !important}
html.ep-reference-1440 .upload-page .upload-intro h1{font-size:64px !important}
html.ep-reference-1440 .upload-page .upload-intro p{font-size:31px !important}
html.ep-reference-1440 .upload-page .dropzone{width:1013px !important}
html.ep-reference-1440 .upload-page .upload-preview-note{width:1014px !important}
html.ep-reference-1440 .upload-page .upload-bottom-row{width:1080px !important}

/* Página 3: nueva referencia — Tipo de papel reemplaza Calidad. */
html.ep-reference-1440 .config-page .paper-type-card .single-paper{display:block !important}
html.ep-reference-1440 .config-page .paper-type-card .single-paper .seg-btn{width:207px !important;margin-left:27px !important;background:var(--red) !important;color:#fff !important;border-color:var(--red) !important}
html.ep-reference-1440 .config-page .file-head .format-badge.pdf{width:42px !important;height:43px !important;font-size:11px !important}

/* Pago por transferencia: comprobante obligatorio antes de finalizar. */
.payment-page .receipt-box{border:1px solid #ccd5e1;background:#f7f8fa;border-radius:9px;padding:11px 12px;margin:0 0 9px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center}
.payment-page .receipt-copy strong{display:block;font-size:16px;color:#073873;margin-bottom:3px}
.payment-page .receipt-copy span{font-size:12px;color:#687386}
.payment-page .receipt-pick{height:42px;font-size:14px;padding:0 14px;background:#fff;color:#073873;border-color:#9fb1c8}
.payment-page .receipt-status{grid-column:1/3;background:#e6f6ec;color:#08783d;border:1px solid #b9dfc6;border-radius:6px;padding:7px 9px;font-size:13px;font-weight:700}
html.ep-reference-1440 .payment-page.transfer-mode .pay-card{height:735px !important}
html.ep-reference-1440 .payment-page.transfer-mode .receipt-box{min-height:82px !important}
html.ep-reference-1440 .payment-page.transfer-mode .ep-canvas{height:1110px !important;overflow:visible !important}


/* =========================================================
   v0.9.24 — Página 2 ajustada a la nueva referencia enviada
   ========================================================= */
html.ep-reference-1440 .upload-page .stepper{margin-bottom:38px !important}
html.ep-reference-1440 .upload-page .upload-intro h1{font-size:62px !important;letter-spacing:-2px !important;margin-bottom:14px !important}
html.ep-reference-1440 .upload-page .upload-intro p{font-size:31px !important;margin-bottom:48px !important;color:#737373 !important}
html.ep-reference-1440 .upload-page .dropzone{
  width:1013px !important;
  height:332px !important;
  border-width:2px !important;
  border-style:dashed !important;
  border-color:#6f93ff !important;
  border-radius:25px !important;
  background:linear-gradient(120deg,#fff 0%,#f4f8ff 72%,#fff 100%) !important;
}
html.ep-reference-1440 .upload-page .upload-cloud{width:64px !important;height:64px !important;margin-bottom:6px !important}
html.ep-reference-1440 .upload-page .dropzone h2{font-size:32px !important;font-weight:800 !important}
html.ep-reference-1440 .upload-page .dropzone .or{font-size:18px !important;margin:4px 0 !important;color:#777 !important}
html.ep-reference-1440 .upload-page .upload-btn{height:49px !important;border-radius:12px !important;padding:0 24px !important;font-size:18px !important;gap:10px !important}
html.ep-reference-1440 .upload-page .upload-folder-btn-icon{width:22px !important;height:22px !important}
html.ep-reference-1440 .upload-page .format-row{margin-top:28px !important;gap:14px !important;font-size:18px !important}
html.ep-reference-1440 .upload-page .format-item{font-size:18px !important;gap:8px !important}
html.ep-reference-1440 .upload-page .format-item b{font-weight:700 !important}
html.ep-reference-1440 .upload-page .fmt{min-width:25px !important;height:25px !important;padding:0 6px !important;border-radius:5px !important;font-size:11px !important}
html.ep-reference-1440 .upload-page .dropzone small{font-size:14px !important;margin-top:16px !important;color:#707070 !important}
html.ep-reference-1440 .upload-page .upload-error,
html.ep-reference-1440 .upload-page .upload-ready{width:1013px !important}
html.ep-reference-1440 .upload-page .upload-preview-simple{
  width:768px;
  height:35px;
  margin:20px auto 0;
  border-radius:4px;
  background:#e5ebf4;
  color:#666;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:12px;
  font-weight:700;
}
html.ep-reference-1440 .upload-page .upload-privacy-simple{
  width:768px;
  min-height:57px;
  margin:9px auto 0;
  border-radius:4px;
  background:#f3d6d8;
  color:#111;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:0 24px;
  font-size:16px;
  font-weight:700;
  line-height:1.2;
}
html.ep-reference-1440 .upload-page .upload-continue-centered{
  text-align:center !important;
  margin-top:28px !important;
}
html.ep-reference-1440 .upload-page .flow-continue{
  width:230px !important;
  height:56px !important;
  border-radius:12px !important;
  font-size:18px !important;
}


/* =========================================================
   v0.9.25 — Seguimiento completamente rearmado
   ========================================================= */
html.ep-reference-1440 .tracking-page .flow-main{
  min-height:924px !important;
  padding:38px 0 50px !important;
}
html.ep-reference-1440 .tracking-page .page-shell{
  width:1336px !important;
  max-width:none !important;
  margin:0 auto !important;
}
.tracking-wrap{
  width:1080px;
  margin:0 auto;
}
.tracking-title-row{
  display:flex;
  align-items:center;
  gap:18px;
  margin:8px 0 28px;
}
.tracking-title-icon{
  width:62px;
  height:62px;
  border-radius:10px;
  background:#dceafd;
  color:#073873;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.tracking-title-icon svg{width:38px;height:38px}
.tracking-title-row h1{
  margin:0 0 5px;
  font-size:40px;
  line-height:1.05;
}
.tracking-title-row p{
  margin:0;
  font-size:18px;
  color:#666;
  font-weight:700;
}
.tracking-search-card{
  width:100%;
  background:#fff;
  border:1px solid #d4d6da;
  border-radius:12px;
  padding:22px 24px;
  box-shadow:0 2px 5px rgba(0,0,0,.10);
}
.tracking-search-card label{
  display:block;
  font-size:17px;
  font-weight:800;
  margin-bottom:9px;
}
.tracking-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) 190px;
  gap:14px;
}
.tracking-search input{
  width:100%;
  height:54px;
  border:1px solid #c9cdd3;
  border-radius:9px;
  padding:0 16px;
  font:inherit;
  font-size:18px;
  outline:none;
}
.tracking-search input:focus{
  border-color:#2b65d9;
  box-shadow:0 0 0 3px rgba(43,101,217,.12);
}
.tracking-search .btn{height:54px;font-size:18px;border-radius:9px}
.tracking-result{margin-top:24px}
.tracking-message{
  width:100%;
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d5d9df;
  border-radius:11px;
  background:#f8fafc;
  font-size:18px;
  font-weight:700;
  color:#5f6670;
  text-align:center;
  padding:18px;
}
.tracking-message-error{
  background:#fff1f2;
  border-color:#e7a3aa;
  color:#9c1828;
}
.tracking-order-card{
  width:100%;
  background:#fff;
  border:1px solid #d1d4d9;
  border-radius:12px;
  padding:26px 30px 24px;
  box-shadow:0 2px 6px rgba(0,0,0,.11);
}
.tracking-order-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-bottom:1px solid #dedede;
  padding-bottom:18px;
}
.tracking-kicker{
  display:block;
  font-size:15px;
  font-weight:800;
  color:#696f77;
  margin-bottom:3px;
}
.tracking-order-head h2{
  margin:0;
  font-size:31px;
  line-height:1;
  color:#111;
}
.tracking-status-badge{
  min-width:170px;
  height:42px;
  padding:0 18px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#edf0f4;
  color:#444;
  font-size:16px;
  font-weight:800;
  white-space:nowrap;
}
.tracking-status-badge.received{background:#e7eef8;color:#164f91}
.tracking-status-badge.printing{background:#e5f0ff;color:#0e60c4}
.tracking-status-badge.ready{background:#e3f5e9;color:#08773a}
.tracking-status-badge.delivered{background:#ececec;color:#555}
.tracking-current-state{
  margin:22px 0 4px;
  min-height:82px;
  border-radius:10px;
  background:#eef8f1;
  display:flex;
  align-items:center;
  gap:16px;
  padding:14px 20px;
}
.tracking-current-icon{
  width:54px;
  height:54px;
  border-radius:50%;
  background:#0b9148;
  color:#fff;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.tracking-current-icon svg{width:34px;height:34px}
.tracking-current-state small{
  display:block;
  font-size:14px;
  color:#637065;
  font-weight:800;
  margin-bottom:4px;
}
.tracking-current-state strong{
  display:block;
  font-size:21px;
  line-height:1.15;
  color:#0b6737;
}
.tracking-timeline{
  --tracking-progress:0%;
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin:34px 18px 30px;
  padding-top:0;
}
.tracking-timeline::before,
.tracking-timeline::after{
  content:'';
  position:absolute;
  top:20px;
  left:12.5%;
  height:4px;
  border-radius:999px;
  z-index:0;
}
.tracking-timeline::before{
  width:75%;
  background:#d8dadd;
}
.tracking-timeline::after{
  width:calc(var(--tracking-progress) * .75);
  max-width:75%;
  background:#0b9148;
}
.tracking-timeline-step{
  position:relative;
  z-index:1;
  text-align:center;
  min-width:0;
}
.tracking-dot{
  width:42px;
  height:42px;
  border-radius:50%;
  background:#d2d4d7;
  color:#fff;
  display:grid;
  place-items:center;
  margin:0 auto 10px;
  font-size:18px;
  font-weight:900;
  border:4px solid #fff;
  box-shadow:0 0 0 1px #d2d4d7;
}
.tracking-timeline-step.done .tracking-dot,
.tracking-timeline-step.active .tracking-dot{
  background:#0b9148;
  box-shadow:0 0 0 1px #0b9148;
}
.tracking-timeline-step strong{
  display:block;
  padding:0 8px;
  font-size:16px;
  line-height:1.18;
  color:#4b4f55;
}
.tracking-timeline-step.active strong{color:#08773a}
.tracking-info-grid{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:14px;
  margin-top:6px;
}
.tracking-info-item{
  min-height:105px;
  border:1px solid #d8dadd;
  border-radius:10px;
  background:#fafbfc;
  padding:15px 16px;
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:13px;
  align-items:center;
  min-width:0;
}
.tracking-info-icon{
  width:46px;
  height:46px;
  border-radius:8px;
  background:#dce6f4;
  color:#073873;
  display:grid;
  place-items:center;
}
.tracking-info-icon svg{width:29px;height:29px}
.tracking-info-item div{min-width:0}
.tracking-info-item small{
  display:block;
  font-size:13px;
  color:#6d7278;
  font-weight:700;
  margin-bottom:3px;
}
.tracking-info-item strong{
  display:block;
  font-size:17px;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.tracking-info-item span:not(.tracking-info-icon){
  display:block;
  font-size:14px;
  color:#6b6f75;
  margin-top:4px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.tracking-help-note{
  margin-top:18px;
  border-radius:8px;
  background:#eef3fa;
  color:#44566f;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:10px 16px;
  font-size:14px;
  font-weight:700;
}


/* =========================================================
   v0.9.26 — Panel administrativo Express Print
   ========================================================= */
.admin-v2{background:#f4f7fb;color:#0a0a0a;min-height:100vh}
.admin-v2 .site-header{background:#f8fafc}
.admin-shell{width:min(1336px,calc(100vw - 64px));margin:0 auto;padding:34px 0 70px}
.admin-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:25px}.admin-kicker{font-size:13px;letter-spacing:.08em;font-weight:800;color:#0a438c}.admin-title-row h1{font-size:40px;margin:4px 0 6px}.admin-title-row p{font-size:17px;color:#667085;margin:0}.admin-refresh{min-width:150px}
.admin-tabs{height:58px;display:flex;gap:8px;border-bottom:1px solid #d8dee8;margin-bottom:24px}.admin-tab{border:0;background:transparent;padding:0 22px;font:700 17px Arial;color:#667085;cursor:pointer;border-bottom:4px solid transparent}.admin-tab.active{color:#e60018;border-bottom-color:#e60018}.admin-panel{display:none}.admin-panel.active{display:block}
.admin-kpis-v2{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.admin-kpis-v2 article{height:105px;background:#fff;border:1px solid #dde2e8;border-radius:13px;padding:18px 22px;box-shadow:0 2px 6px rgba(0,0,0,.05)}.admin-kpis-v2 span{font-size:15px;color:#667085;font-weight:700}.admin-kpis-v2 strong{display:block;font-size:34px;color:#073873;margin-top:8px}.admin-toolbar{background:#fff;border:1px solid #dfe3e9;border-radius:13px;padding:14px 16px;display:flex;gap:18px;align-items:center;margin-bottom:14px}.admin-search-wrap{height:46px;min-width:360px;flex:1;border:1px solid #ccd3dd;border-radius:9px;display:flex;align-items:center;padding:0 13px;gap:9px}.admin-search-wrap input{border:0;outline:0;width:100%;font-size:16px}.admin-filters{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{height:38px;border:1px solid #cfd5dc;border-radius:20px;background:#fff;padding:0 14px;font-weight:700;cursor:pointer}.filter-chip.active{background:#073873;border-color:#073873;color:#fff}.admin-v2 .admin-warning{background:#fff7df;margin:0 0 15px;border-color:#efd484}
.admin-order-list{display:grid;gap:12px}.admin-order-card{background:#fff;border:1px solid #dde2e8;border-radius:13px;box-shadow:0 2px 6px rgba(0,0,0,.05);overflow:hidden}.admin-order-main{min-height:98px;display:grid;grid-template-columns:minmax(330px,1.7fr) minmax(210px,.8fr) 160px 120px;gap:20px;align-items:center;padding:16px 20px}.order-primary .order-code{font-size:21px}.order-customer{font-size:16px;font-weight:700;margin-top:5px}.order-file{font-size:14px;color:#667085;margin-top:4px}.order-payment{display:flex;flex-direction:column;gap:7px}.order-payment strong{font-size:22px}.pay-status{width:max-content;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.pay-status.mp{background:#e4f0ff;color:#0753a8}.pay-status.transfer{background:#e3f5e9;color:#08743b}.admin-order-detail{display:none;border-top:1px solid #e7e9ed;background:#fafbfd;padding:20px}.admin-order-detail.open{display:block}.order-detail-grid{display:grid;grid-template-columns:1.5fr 1.25fr 1fr 1fr;gap:18px}.order-detail-grid>div{background:#fff;border:1px solid #e2e5ea;border-radius:9px;padding:13px}.order-detail-grid span{font-size:12px;color:#667085;font-weight:800;text-transform:uppercase}.order-detail-grid strong{display:block;font-size:16px;margin:6px 0}.order-detail-grid small{font-size:14px}.order-detail-grid a,.admin-link{color:#164be0;font-weight:700}.order-state-actions{display:flex;gap:8px;margin-top:15px;flex-wrap:wrap}.order-state-actions button,.order-state-actions a{height:38px;border:1px solid #cbd1d9;border-radius:8px;background:#fff;color:#111;padding:0 14px;display:inline-flex;align-items:center;font-weight:700;cursor:pointer}.order-state-actions .ready{background:#e5f5eb;color:#08743b;border-color:#b7dfc6}.order-state-actions a{text-decoration:none}
.admin-settings-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:18px}.admin-setting-card,.admin-notification-card{background:#fff;border:1px solid #dfe3e9;border-radius:14px;padding:24px;box-shadow:0 2px 6px rgba(0,0,0,.05)}.setting-heading{display:flex;gap:14px;align-items:center;margin-bottom:22px}.setting-icon{width:50px;height:50px;border-radius:12px;background:#e6effd;color:#073873;display:grid;place-items:center;font-size:25px;font-weight:800}.setting-heading h2,.notification-copy h2{font-size:25px;margin:0 0 5px}.setting-heading p,.notification-copy p{color:#667085;margin:0;line-height:1.4}.settings-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.settings-form-grid label{font-size:14px;font-weight:800}.settings-form-grid input{display:block;width:100%;height:45px;margin-top:6px;border:1px solid #cbd2dc;border-radius:8px;padding:0 11px;font-size:16px}.wide-setting{grid-column:1/3}.pickup-preview{margin-top:18px;border-radius:9px;background:#edf7f0;padding:13px 15px;font-size:15px}.admin-save-row{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:18px}.admin-save-row #settingsStatus{font-weight:700;color:#08743b}.admin-notification-card{display:grid;grid-template-columns:100px 1fr;gap:22px;max-width:980px}.notification-phone{width:90px;height:90px;border-radius:22px;background:#e6effd;display:grid;place-items:center;font-size:42px}.admin-switch-line{margin:20px 0 16px;display:flex;align-items:center;gap:11px;font-size:17px;font-weight:800}.admin-switch-line input{width:22px;height:22px}.notification-fields{max-width:720px}.notification-actions{display:flex;align-items:center;gap:15px;margin-top:16px}.notification-actions span{font-weight:700}.notification-note{margin-top:16px;background:#f4f7fb;border-radius:9px;padding:12px 14px;color:#667085;line-height:1.4}
@media(max-width:1000px){.admin-shell{width:calc(100vw - 28px)}.admin-kpis-v2{grid-template-columns:repeat(2,1fr)}.admin-toolbar{align-items:stretch;flex-direction:column}.admin-search-wrap{min-width:0}.admin-order-main{grid-template-columns:1fr 1fr}.admin-settings-grid{grid-template-columns:1fr}.admin-notification-card{grid-template-columns:1fr}.order-detail-grid{grid-template-columns:1fr 1fr}}


/* =========================================================
   v0.9.27 — ADMINISTRACIÓN COMPACTA, SIN SCROLL DE PÁGINA
   ========================================================= */
body.admin-compact{height:100vh;min-height:0;overflow:hidden;background:#f4f7fb}
.admin-logo-header{height:82px;background:#f8fafc;border-bottom:1px solid #d6d8dc;box-shadow:0 2px 4px rgba(0,0,0,.12);display:flex;align-items:center}
.admin-logo-wrap{width:min(1336px,calc(100vw - 64px));margin:0 auto;display:flex;align-items:center}
.admin-logo-link{width:330px;height:62px;display:flex;align-items:center}
.admin-logo-link img{width:100%;height:auto;max-height:62px;object-fit:contain}
.admin-compact .admin-shell{width:min(1336px,calc(100vw - 64px));height:calc(100vh - 82px);margin:0 auto;padding:14px 0 12px;overflow:hidden;display:flex;flex-direction:column}
.admin-compact .admin-title-row{min-height:58px;align-items:center;margin-bottom:8px}
.admin-compact .admin-kicker{font-size:11px}
.admin-compact .admin-title-row h1{font-size:29px;margin:2px 0 2px}
.admin-compact .admin-title-row p{font-size:13px}
.admin-compact .admin-refresh{height:40px;min-width:132px;font-size:14px;padding:0 16px}
.admin-compact .admin-tabs{height:42px;flex:0 0 42px;margin-bottom:10px}
.admin-compact .admin-tab{font-size:14px;padding:0 18px;border-bottom-width:3px}
.admin-compact .admin-panel.active{display:flex;flex-direction:column;min-height:0;flex:1}
.admin-compact .admin-kpis-v2{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:9px;flex:0 0 auto}
.admin-compact .admin-kpis-v2 article{height:67px;border-radius:10px;padding:9px 15px}
.admin-compact .admin-kpis-v2 span{font-size:12px}
.admin-compact .admin-kpis-v2 strong{font-size:25px;margin-top:2px}
.admin-compact .admin-toolbar{min-height:48px;border-radius:10px;padding:6px 9px;gap:10px;margin-bottom:9px;flex:0 0 auto}
.admin-compact .admin-search-wrap{height:36px;min-width:330px;border-radius:8px;padding:0 10px}
.admin-compact .admin-search-wrap input{font-size:13px}
.admin-compact .admin-filters{gap:5px;flex-wrap:nowrap}
.admin-compact .filter-chip{height:32px;padding:0 11px;font-size:12px}
.admin-compact .admin-order-list{display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:7px;flex:1;min-height:0}
.admin-compact .admin-order-card{border-radius:10px;min-height:0}
.admin-compact .admin-order-main{height:100%;min-height:0;grid-template-columns:minmax(300px,1.7fr) minmax(165px,.7fr) 145px 104px;gap:14px;padding:8px 14px}
.admin-compact .order-primary .order-code{font-size:17px}
.admin-compact .order-customer{font-size:13px;margin-top:2px}
.admin-compact .order-file{font-size:11px;margin-top:2px}
.admin-compact .order-payment{gap:3px}
.admin-compact .order-payment strong{font-size:17px}
.admin-compact .pay-status{padding:3px 7px;font-size:10px}
.admin-compact .badge{padding:5px 8px;font-size:10px;justify-self:start}
.admin-compact .order-open{height:31px;padding:0 10px;font-size:11px}
.admin-list-footer{height:36px;flex:0 0 36px;margin-top:7px;display:flex;align-items:center;justify-content:space-between}
.admin-security-note{font-size:11px;color:#667085}
.admin-pagination{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#475467}
.admin-pagination button{width:30px;height:28px;border:1px solid #cbd2dc;border-radius:7px;background:#fff;font-size:18px;cursor:pointer}
.admin-pagination button:disabled{opacity:.35;cursor:default}
.admin-empty-compact{flex:1;padding:30px}

/* Detalle en ventana flotante: no empuja ni alarga la página. */
.admin-detail-modal{position:fixed;inset:0;z-index:700;display:none;align-items:center;justify-content:center}
.admin-detail-modal.show{display:flex}
.admin-detail-backdrop{position:absolute;inset:0;background:rgba(5,18,37,.42);backdrop-filter:blur(2px)}
.admin-detail-card{position:relative;width:min(1080px,calc(100vw - 70px));max-height:calc(100vh - 80px);background:#fff;border-radius:16px;padding:24px;box-shadow:0 28px 80px rgba(0,0,0,.28);overflow:hidden}
.admin-detail-close{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:30px;color:#667085;cursor:pointer}
.modal-order-head{display:flex;align-items:center;justify-content:space-between;padding-right:38px;margin-bottom:16px}
.modal-order-head h2{font-size:29px;margin:3px 0 2px;color:#073873}
.modal-order-head p{margin:0;color:#667085;font-size:14px;font-weight:700}
.modal-order-grid{display:grid;grid-template-columns:1.2fr 1.1fr .9fr 1.15fr 1fr;gap:10px}
.modal-order-grid>div{min-height:112px;border:1px solid #e0e4e9;border-radius:10px;padding:12px;background:#fafbfd}
.modal-order-grid span{display:block;font-size:10px;color:#667085;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.modal-order-grid strong{display:block;font-size:14px;margin:8px 0 5px}
.modal-order-grid small{display:block;font-size:11px;color:#667085;line-height:1.3}
.modal-order-grid a{display:inline-block;margin-top:8px;color:#164be0;font-size:11px;font-weight:800}
.modal-state-title{font-size:12px;font-weight:900;margin-top:16px;color:#475467;text-transform:uppercase}
.modal-actions{margin-top:8px;flex-wrap:nowrap}
.modal-actions button,.modal-actions a{height:36px;font-size:12px;padding:0 12px}

/* Precios y horarios también quedan contenidos en la altura de pantalla. */
.admin-compact .admin-settings-grid{grid-template-columns:1.08fr .92fr;gap:12px;flex:1;min-height:0}
.admin-compact .admin-setting-card,.admin-compact .admin-notification-card{border-radius:12px;padding:15px;min-height:0}
.admin-compact .setting-heading{gap:10px;margin-bottom:10px}
.admin-compact .setting-icon{width:39px;height:39px;border-radius:9px;font-size:20px}
.admin-compact .setting-heading h2,.admin-compact .notification-copy h2{font-size:19px;margin-bottom:2px}
.admin-compact .setting-heading p,.admin-compact .notification-copy p{font-size:12px;line-height:1.25}
.admin-compact .settings-form-grid{gap:9px 10px}
.admin-compact .settings-form-grid label{font-size:11px}
.admin-compact .settings-form-grid input{height:35px;margin-top:3px;border-radius:7px;padding:0 9px;font-size:13px}
.admin-compact .pickup-preview{margin-top:9px;padding:9px 11px;font-size:12px}
.admin-compact .admin-save-row{height:43px;flex:0 0 43px;margin-top:7px}
.admin-compact .admin-save-row .btn{height:38px;font-size:14px}

/* Avisos al teléfono, sin desplazamiento de página. */
.admin-compact #panel-notifications{justify-content:flex-start}
.admin-compact .admin-notification-card{grid-template-columns:78px 1fr;gap:16px;max-width:none;height:auto}
.admin-compact .notification-phone{width:68px;height:68px;border-radius:17px;font-size:32px}
.admin-compact .admin-switch-line{margin:13px 0 10px;font-size:14px}
.admin-compact .admin-switch-line input{width:19px;height:19px}
.admin-compact .notification-fields{max-width:760px}
.admin-compact .notification-actions{margin-top:10px}
.admin-compact .notification-actions .btn{height:38px;font-size:13px}
.admin-compact .notification-note{margin-top:10px;padding:9px 11px;font-size:11px;line-height:1.3}

@media(max-width:1100px){
  body.admin-compact{overflow:auto;height:auto;min-height:100vh}
  .admin-compact .admin-shell{height:auto;min-height:calc(100vh - 82px);overflow:visible}
  .admin-compact .admin-filters{flex-wrap:wrap}
  .admin-compact .admin-order-main{grid-template-columns:1.5fr .8fr 130px 100px}
}


/* =========================================================
   v0.9.28 — ADMIN EN UN SOLO BLOQUE + 100% SIN CORTES
   ========================================================= */
html.ep-admin-master,
html.ep-admin-master body.admin-compact{
  width:100%;
  height:100%;
  min-height:0;
  margin:0;
  overflow:hidden !important;
  background:#f4f7fb;
}
html.ep-admin-master .admin-stage{
  position:relative;
  width:100vw;
  height:100vh;
  overflow:hidden;
  background:#f4f7fb;
}
html.ep-admin-master .admin-canvas{
  position:absolute;
  top:0;
  left:50%;
  width:var(--admin-canvas-w);
  height:var(--admin-canvas-h);
  transform-origin:top center;
  background:#f4f7fb;
  overflow:hidden;
}
html.ep-admin-master .admin-logo-header{
  width:var(--admin-canvas-w);
  height:82px;
}
html.ep-admin-master .admin-logo-wrap,
html.ep-admin-master .admin-shell{
  width:calc(var(--admin-canvas-w) - 64px) !important;
  max-width:none !important;
}
html.ep-admin-master .admin-shell{
  height:818px !important;
  min-height:0 !important;
  padding:14px 0 12px !important;
  overflow:hidden !important;
}
/* Mantener la geometría del panel aunque el zoom cambie el ancho CSS del viewport. */
html.ep-admin-master .admin-filters{flex-wrap:nowrap !important}
html.ep-admin-master .admin-toolbar{flex-direction:row !important;align-items:center !important}
html.ep-admin-master .admin-search-wrap{min-width:330px !important}
html.ep-admin-master .admin-order-main{
  grid-template-columns:minmax(300px,1.7fr) minmax(165px,.7fr) 145px 104px !important;
}
html.ep-admin-master .admin-kpis-v2{grid-template-columns:repeat(4,1fr) !important}
html.ep-admin-master .admin-settings-grid{grid-template-columns:1.08fr .92fr !important}
html.ep-admin-master .admin-notification-card{grid-template-columns:78px 1fr !important}

/* Un poco más de aire útil para los 4 pedidos sin aumentar la altura total. */
html.ep-admin-master .admin-compact .admin-title-row{min-height:54px;margin-bottom:6px}
html.ep-admin-master .admin-compact .admin-tabs{height:40px;flex-basis:40px;margin-bottom:8px}
html.ep-admin-master .admin-compact .admin-kpis-v2{margin-bottom:8px}
html.ep-admin-master .admin-compact .admin-toolbar{min-height:46px;margin-bottom:8px}
html.ep-admin-master .admin-list-footer{height:32px;flex-basis:32px;margin-top:6px}
html.ep-admin-master .admin-compact .admin-order-list{gap:7px}

@media(max-width:1100px){
  html.ep-admin-master body.admin-compact{height:100% !important;min-height:0 !important;overflow:hidden !important}
  html.ep-admin-master .admin-compact .admin-shell{height:818px !important;min-height:0 !important;overflow:hidden !important}
  html.ep-admin-master .admin-compact .admin-toolbar{flex-direction:row !important;align-items:center !important}
  html.ep-admin-master .admin-compact .admin-filters{flex-wrap:nowrap !important}
  html.ep-admin-master .admin-compact .admin-order-main{grid-template-columns:minmax(300px,1.7fr) minmax(165px,.7fr) 145px 104px !important}
  html.ep-admin-master .admin-compact .admin-settings-grid{grid-template-columns:1.08fr .92fr !important}
  html.ep-admin-master .admin-compact .admin-notification-card{grid-template-columns:78px 1fr !important}
}


/* =========================================================
   v0.9.29 — ADMIN CALIBRADO PARA 100% + TIPOGRAFÍA MÁS GRANDE
   Lienzo maestro 1366×730. Tres pedidos por página para ganar legibilidad.
   ========================================================= */
html.ep-admin-master .admin-logo-header{height:76px !important}
html.ep-admin-master .admin-logo-wrap{height:76px !important}
html.ep-admin-master .admin-logo-link{width:355px !important;height:64px !important}
html.ep-admin-master .admin-logo-link img{max-height:64px !important}
html.ep-admin-master .admin-shell{
  height:654px !important;
  padding:10px 0 8px !important;
}

html.ep-admin-master .admin-compact .admin-title-row{min-height:58px !important;margin-bottom:6px !important}
html.ep-admin-master .admin-compact .admin-kicker{font-size:13px !important;letter-spacing:.02em}
html.ep-admin-master .admin-compact .admin-title-row h1{font-size:36px !important;line-height:1 !important;margin:3px 0 4px !important}
html.ep-admin-master .admin-compact .admin-title-row p{font-size:15px !important}
html.ep-admin-master .admin-compact .admin-refresh{height:44px !important;min-width:142px !important;font-size:15px !important}

html.ep-admin-master .admin-compact .admin-tabs{height:44px !important;flex-basis:44px !important;margin-bottom:8px !important}
html.ep-admin-master .admin-compact .admin-tab{font-size:16px !important;padding:0 20px !important}

html.ep-admin-master .admin-compact .admin-kpis-v2{gap:10px !important;margin-bottom:8px !important}
html.ep-admin-master .admin-compact .admin-kpis-v2 article{height:70px !important;padding:9px 15px !important}
html.ep-admin-master .admin-compact .admin-kpis-v2 span{font-size:14px !important}
html.ep-admin-master .admin-compact .admin-kpis-v2 strong{font-size:29px !important;margin-top:1px !important}

html.ep-admin-master .admin-compact .admin-toolbar{min-height:48px !important;padding:6px 9px !important;margin-bottom:8px !important}
html.ep-admin-master .admin-compact .admin-search-wrap{height:36px !important;min-width:355px !important}
html.ep-admin-master .admin-compact .admin-search-wrap input{font-size:15px !important}
html.ep-admin-master .admin-compact .filter-chip{height:34px !important;padding:0 12px !important;font-size:13px !important}

html.ep-admin-master .admin-compact .admin-order-list{
  grid-template-rows:repeat(3,minmax(0,1fr)) !important;
  gap:8px !important;
}
html.ep-admin-master .admin-compact .admin-order-main{
  grid-template-columns:minmax(330px,1.7fr) minmax(170px,.7fr) 160px 118px !important;
  gap:15px !important;
  padding:11px 15px !important;
}
html.ep-admin-master .admin-compact .order-primary .order-code{font-size:19px !important}
html.ep-admin-master .admin-compact .order-customer{font-size:15px !important;margin-top:3px !important}
html.ep-admin-master .admin-compact .order-file{font-size:13px !important;margin-top:3px !important}
html.ep-admin-master .admin-compact .order-payment{gap:4px !important}
html.ep-admin-master .admin-compact .order-payment strong{font-size:19px !important}
html.ep-admin-master .admin-compact .pay-status{padding:4px 8px !important;font-size:11px !important}
html.ep-admin-master .admin-compact .admin-link{font-size:14px !important}
html.ep-admin-master .admin-compact .badge{padding:6px 9px !important;font-size:11px !important}
html.ep-admin-master .admin-compact .order-open{height:35px !important;padding:0 12px !important;font-size:13px !important}
html.ep-admin-master .admin-list-footer{height:32px !important;flex-basis:32px !important;margin-top:6px !important}
html.ep-admin-master .admin-security-note{font-size:12px !important}
html.ep-admin-master .admin-pagination{font-size:13px !important}

/* Configuración y avisos: misma mejora de legibilidad sin aumentar la página. */
html.ep-admin-master .admin-compact .admin-settings-grid{gap:12px !important}
html.ep-admin-master .admin-compact .admin-setting-card,
html.ep-admin-master .admin-compact .admin-notification-card{padding:14px !important}
html.ep-admin-master .admin-compact .setting-heading h2,
html.ep-admin-master .admin-compact .notification-copy h2{font-size:21px !important}
html.ep-admin-master .admin-compact .setting-heading p,
html.ep-admin-master .admin-compact .notification-copy p{font-size:13px !important}
html.ep-admin-master .admin-compact .settings-form-grid{gap:8px 10px !important}
html.ep-admin-master .admin-compact .settings-form-grid label{font-size:12px !important}
html.ep-admin-master .admin-compact .settings-form-grid input{height:35px !important;font-size:14px !important}
html.ep-admin-master .admin-compact .pickup-preview{font-size:13px !important}
html.ep-admin-master .admin-compact .admin-save-row{height:42px !important;flex-basis:42px !important}
html.ep-admin-master .admin-compact .admin-save-row .btn{height:38px !important;font-size:15px !important}
html.ep-admin-master .admin-compact .admin-switch-line{font-size:15px !important}
html.ep-admin-master .admin-compact .notification-actions .btn{font-size:14px !important}
html.ep-admin-master .admin-compact .notification-note{font-size:12px !important}

/* El modal también debe ser cómodo al 100%. */
html.ep-admin-master .admin-detail-card{font-size:15px}
html.ep-admin-master .modal-order-head h2{font-size:30px}
html.ep-admin-master .modal-order-head p{font-size:15px}
html.ep-admin-master .modal-order-grid span{font-size:11px}
html.ep-admin-master .modal-order-grid strong{font-size:17px}
html.ep-admin-master .modal-order-grid small{font-size:13px}


/* =========================================================
   v0.9.30 — ADMIN más ancho, menos blancos laterales
   ========================================================= */
html.ep-admin-master .admin-logo-wrap,
html.ep-admin-master .admin-shell{
  width:calc(var(--admin-canvas-w) - 20px) !important;
}
/* Un poco menos de aire entre el borde del lienzo y el contenido principal */
html.ep-admin-master .admin-compact .admin-title-row{padding:0 4px !important}
html.ep-admin-master .admin-compact .admin-tabs{margin-left:4px !important;margin-right:4px !important}
html.ep-admin-master .admin-compact .admin-kpis-v2,
html.ep-admin-master .admin-compact .admin-toolbar,
html.ep-admin-master .admin-compact .admin-order-list,
html.ep-admin-master .admin-list-footer,
html.ep-admin-master .admin-compact .admin-settings-grid,
html.ep-admin-master .admin-compact .admin-notification-card{
  width:100% !important;
}

/* =========================================================
   v0.9.31 — Horarios de retiro reales y capacidad automática
   ========================================================= */
html.ep-reference-1440 .payment-page .pickup-reserve-note{
  display:block;
  margin-top:3px;
  font-size:12px;
  line-height:1.15;
  color:#6f6f6f;
  font-weight:700;
}
html.ep-reference-1440 .payment-page .delivery-time-inline{
  color:#111 !important;
  font-weight:700 !important;
}
.tracking-info-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.tracking-pickup-item .tracking-info-icon{color:#7442b6;background:#ead4ff}

/* El bloque de producción tiene más campos, pero debe seguir entrando en la
   pantalla administrativa compacta. */
html.ep-admin-master .admin-compact .production-setting-card .setting-heading{margin-bottom:7px !important}
html.ep-admin-master .admin-compact .production-grid{gap:5px 9px !important}
html.ep-admin-master .admin-compact .production-grid label{font-size:11px !important}
html.ep-admin-master .admin-compact .production-grid input{
  height:29px !important;
  margin-top:2px !important;
  font-size:13px !important;
}
html.ep-admin-master .admin-compact .production-setting-card .pickup-preview{
  margin-top:6px !important;
  padding:7px 9px !important;
  font-size:12px !important;
}


/* =========================================================
   v0.9.32 — Notificaciones gratuitas + WhatsApp manual
   ========================================================= */
.whatsapp-consent{display:flex;align-items:flex-start;gap:9px;margin-top:8px;font-size:12px;font-weight:700;color:#4d5968;line-height:1.25}
.whatsapp-consent input{width:18px;height:18px;flex:0 0 auto;margin-top:0}
.customer-advised-inline{color:#08743b;font-weight:800}
.customer-notify-panel{margin-top:14px;border:1px solid #b8d9c5;background:#edf8f1;border-radius:10px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.customer-notify-panel>div:first-child{min-width:0}.customer-notify-panel strong{display:block;color:#075f32;font-size:15px}.customer-notify-panel small{display:block;color:#55645d;font-size:12px;line-height:1.3;margin-top:4px}
.customer-notify-panel.is-advised{background:#e6f5eb}.customer-notify-actions{display:flex;gap:8px;flex:0 0 auto}
.btn-whatsapp{height:38px;background:#168447;color:#fff;border-color:#168447;border-radius:8px;font-size:13px;padding:0 14px}.btn-whatsapp:hover{background:#126d3b}
.notification-free-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:12px;flex:1;min-height:0}
html.ep-admin-master .admin-compact .notification-free-grid .admin-notification-card{display:grid !important;grid-template-columns:70px 1fr !important;gap:14px !important;height:100% !important;overflow:hidden}
html.ep-admin-master .admin-compact .notification-free-grid .notification-phone{width:62px !important;height:62px !important;font-size:28px !important}
html.ep-admin-master .admin-compact .notification-fields textarea{display:block;width:100%;margin-top:3px;border:1px solid #cbd2dc;border-radius:7px;padding:7px 9px;font:13px Arial;resize:none;line-height:1.28}
html.ep-admin-master .admin-compact .notification-free-grid .notification-copy h2{font-size:20px !important}
html.ep-admin-master .admin-compact .notification-free-grid .notification-copy p{font-size:12px !important;line-height:1.28}
html.ep-admin-master .admin-compact .notification-free-grid .notification-actions{margin-top:8px !important}
html.ep-admin-master .admin-compact .notification-free-grid .notification-note{margin-top:8px !important;font-size:11px !important}
@media(max-width:1100px){.notification-free-grid{grid-template-columns:1fr}}

/* Pago: consentimiento de WhatsApp legible, sin superponer el panel seguro. */
html.ep-reference-1440 .payment-page .contact-box{height:125px !important;padding:9px 10px 7px !important}
html.ep-reference-1440 .payment-page .contact-field input{height:47px !important;font-size:21px !important}
html.ep-reference-1440 .payment-page .whatsapp-consent{margin-top:6px !important;font-size:11px !important;line-height:1.15 !important;align-items:center !important;color:#4d5968 !important}
html.ep-reference-1440 .payment-page .whatsapp-consent input{width:18px !important;height:18px !important}
html.ep-reference-1440 .payment-page .safe-panel{height:103px !important;padding:10px 14px !important;grid-template-columns:92px 1fr !important}
html.ep-reference-1440 .payment-page .safe-icon{width:70px !important;height:70px !important}
html.ep-reference-1440 .payment-page .safe-panel strong{font-size:20px !important}
html.ep-reference-1440 .payment-page .safe-panel p{font-size:14px !important;margin:8px 0 0 !important;line-height:1.35 !important}


/* =========================================================
   v0.9.33 — Avisos admin por WhatsApp + precios sincronizados
   ========================================================= */
.admin-advice-pending{color:#a15c00;font-weight:800}
.admin-advice-sent{color:#08743b;font-weight:800}
.admin-order-notify-panel{margin-top:12px;border:1px solid #f0c36a;background:#fff8e8;border-radius:10px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.admin-order-notify-panel.is-advised{border-color:#b7dfc6;background:#edf8f1}
.admin-order-notify-panel>div:first-child{min-width:0}
.admin-order-notify-panel strong{display:block;font-size:14px;color:#6b4700}
.admin-order-notify-panel.is-advised strong{color:#08743b}
.admin-order-notify-panel small{display:block;font-size:11px;color:#667085;margin-top:3px}
.admin-order-notify-panel .customer-notify-actions{display:flex;gap:7px;align-items:center;flex-wrap:nowrap}
.admin-order-notify-panel .btn{height:34px;font-size:12px;padding:0 10px}
html.ep-admin-master .notification-free-grid{display:grid;gap:9px;min-height:0}
html.ep-admin-master .whatsapp-admin-card .notification-actions{flex-wrap:wrap}
html.ep-admin-master .notification-fields textarea{width:100%;border:1px solid #cbd2dc;border-radius:7px;padding:7px 9px;font:inherit;resize:vertical}
html.ep-admin-master .whatsapp-admin-card .settings-form-grid{grid-template-columns:1fr 1fr 1fr !important}
html.ep-admin-master .whatsapp-admin-card .wide-setting{grid-column:1/4 !important}
/* El panel de notificaciones puede tener más contenido que las otras pestañas; se compacta internamente sin cambiar el bloque maestro. */
html.ep-admin-master #panel-notifications .admin-notification-card{padding:11px !important}
html.ep-admin-master #panel-notifications .notification-phone{width:56px !important;height:56px !important;font-size:27px !important}
html.ep-admin-master #panel-notifications .notification-copy h2{font-size:18px !important}
html.ep-admin-master #panel-notifications .notification-copy p{font-size:11px !important;margin:2px 0 6px !important}
html.ep-admin-master #panel-notifications .settings-form-grid{gap:5px 7px !important}
html.ep-admin-master #panel-notifications .settings-form-grid label{font-size:10px !important}
html.ep-admin-master #panel-notifications .settings-form-grid input{height:29px !important;font-size:12px !important;margin-top:2px !important}
html.ep-admin-master #panel-notifications textarea{font-size:11px !important;line-height:1.2 !important;padding:5px 7px !important}
html.ep-admin-master #panel-notifications .notification-actions{margin-top:6px !important;gap:7px !important}
html.ep-admin-master #panel-notifications .notification-actions .btn{height:31px !important;font-size:11px !important}
html.ep-admin-master #panel-notifications .notification-note{margin-top:6px !important;padding:6px 8px !important;font-size:10px !important}

/* =========================================================
   v0.9.34 — Ajustes cliente + páginas informativas + email admin
   ========================================================= */

/* Pago: nombres largos nunca invaden el botón Ver archivo. */
html.ep-reference-1440 .payment-page .file-card .detail-row>div{
  min-width:0 !important;
  overflow:hidden !important;
}
html.ep-reference-1440 .payment-page #fileName{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
html.ep-reference-1440 .payment-page .file-card p{min-width:0 !important;overflow:hidden !important}
/* “IVA incluido” queda pegado al total y lejos del borde inferior. */
html.ep-reference-1440 .payment-page .price-lines>small{
  display:block !important;
  margin-top:1px !important;
  line-height:1 !important;
  transform:translateY(-5px) !important;
  font-size:14px !important;
}
/* Icono de configuración: sliders simples, proporcionados y sin deformación. */
html.ep-reference-1440 .payment-page .config-selected-icon svg{
  width:39px !important;
  height:39px !important;
  aspect-ratio:1/1 !important;
  stroke-width:1.7 !important;
}

/* Subida: advertencia específica para formatos que necesitan conversión. */
html.ep-reference-1440 .upload-page .non-pdf-note{
  width:620px;
  margin-top:8px;
  text-align:center;
  color:#5e6672;
  font-size:12px;
  line-height:1.25;
  font-weight:700;
}
html.ep-reference-1440 .upload-page .upload-ready{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Páginas públicas internas: mismo encabezado y geometría que el flujo. */
html.ep-reference-1440 body.content-page{background:#fff}
html.ep-reference-1440 .content-page .flow-main{padding-top:34px !important}
.info-main{min-height:924px}
.info-hero{display:flex;align-items:center;gap:18px;margin:0 0 28px;padding:0 6px}
.info-hero-icon{width:66px;height:66px;border-radius:13px;background:#d9e4f2;color:#073873;display:grid;place-items:center;flex:0 0 auto}
.info-hero-icon svg{width:39px;height:39px}
.info-hero h1{font-size:40px;line-height:1.05;margin:0 0 7px}
.info-hero p{font-size:18px;color:#667085;font-weight:700;margin:0}
.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.process-card{min-height:148px;border:1px solid #d9dee6;border-radius:13px;background:#fff;display:grid;grid-template-columns:44px 58px 1fr;gap:14px;align-items:center;padding:17px 20px;position:relative;box-shadow:0 2px 5px rgba(0,0,0,.05)}
.process-card:last-child{grid-column:1/3}
.process-number{width:34px;height:34px;border-radius:50%;background:#e60018;color:#fff;display:grid;place-items:center;font-size:17px;font-weight:800}
.process-icon{width:54px;height:54px;border-radius:11px;background:#e7eef8;color:#073873;display:grid;place-items:center}
.process-icon svg{width:31px;height:31px}
.process-card h2{font-size:22px;margin:0 0 7px}
.process-card p{font-size:15px;line-height:1.42;color:#4f5968;margin:0;font-weight:600}
.info-bottom-callout{height:88px;margin-top:18px;border-radius:12px;background:#f3f6fa;border:1px solid #dde3ea;display:flex;align-items:center;justify-content:space-between;padding:0 25px}
.info-bottom-callout strong{display:block;font-size:21px;margin-bottom:4px}.info-bottom-callout span{font-size:14px;color:#667085}.info-bottom-callout .btn{height:52px;font-size:17px}

.public-price-card{border:1px solid #d9dee6;border-radius:14px;background:#fff;padding:22px 28px;box-shadow:0 2px 6px rgba(0,0,0,.05)}
.public-price-head{display:flex;align-items:start;justify-content:space-between;gap:18px;padding-bottom:15px;border-bottom:1px solid #e1e5ea}
.public-price-head h2{font-size:27px;margin:0 0 5px}.public-price-head p{font-size:14px;color:#667085;margin:0;font-weight:600}
.price-live-badge{border-radius:999px;background:#e9f7ee;color:#08743b;padding:8px 12px;font-size:12px;font-weight:800;white-space:nowrap}
.public-price-list{display:grid;grid-template-columns:1fr 1fr;column-gap:45px;padding-top:6px}
.public-price-row{min-height:66px;border-bottom:1px solid #e7e9ed;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px 4px}
.public-price-row strong{display:block;font-size:17px}.public-price-row span{display:block;color:#777;font-size:13px;margin-top:4px}.public-price-row b{font-size:20px;color:#073873;white-space:nowrap}.public-price-row b.discount{color:#08743b}
.price-explanation{height:82px;margin-top:18px;border:1px solid #dce4ef;border-radius:12px;background:#f6f9fd;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}
.price-explanation span{display:flex;align-items:center;justify-content:center;gap:10px;font-size:15px;font-weight:700}.price-explanation svg{width:24px;height:24px;color:#079541}

.contact-public-card{min-height:230px;border:1px solid #d9dee6;border-radius:14px;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.05);padding:34px 38px;display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:25px;align-items:center}
.contact-mail-icon{width:72px;height:72px;border-radius:15px;background:#dce8f7;color:#073873;display:grid;place-items:center;font-size:38px;font-weight:800}
.contact-public-card small{font-size:14px;color:#667085;font-weight:800;text-transform:uppercase}.contact-public-card h2{font-size:31px;margin:7px 0 10px;color:#073873}.contact-public-card p{font-size:16px;color:#5d6673;line-height:1.45;margin:0;max-width:720px}
.contact-track-card{height:105px;margin-top:20px;border:1px solid #d9dee6;border-radius:13px;background:#f7f9fc;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.contact-track-card strong{display:block;font-size:19px;margin-bottom:5px}.contact-track-card span{font-size:14px;color:#667085}

/* Admin: email automático ocupa la columna derecha completa. */
html.ep-admin-master #panel-notifications .notification-free-grid{
  grid-template-columns:.82fr 1.18fr !important;
  grid-template-rows:1fr 1fr !important;
  gap:8px !important;
}
html.ep-admin-master #panel-notifications .browser-alert-card{grid-column:1;grid-row:1}
html.ep-admin-master #panel-notifications .whatsapp-manual-card{grid-column:1;grid-row:2}
html.ep-admin-master #panel-notifications .email-admin-card{grid-column:2;grid-row:1/3}
html.ep-admin-master #panel-notifications .notification-free-grid .admin-notification-card{height:auto !important;min-height:0 !important}
html.ep-admin-master #panel-notifications .email-admin-card .settings-form-grid{grid-template-columns:1fr 1fr !important;gap:5px 7px !important}
html.ep-admin-master #panel-notifications .email-admin-card .wide-setting{grid-column:1/3 !important}
html.ep-admin-master #panel-notifications .email-admin-card .admin-switch-line{margin:5px 0 6px !important;font-size:11px !important}
html.ep-admin-master #panel-notifications .email-admin-card .email-tls-line{display:flex;align-items:center;gap:7px;font-size:10px !important}
html.ep-admin-master #panel-notifications .email-admin-card .email-tls-line input{width:17px !important;height:17px !important;margin:0 !important}
.admin-advice-error{color:#b42318;font-weight:800}
.email-error-panel{border-color:#e6a39c !important;background:#fff3f1 !important}.email-error-panel strong{color:#9c2118 !important}
/* Con email automático ya configurado, la alerta local del navegador queda oculta
   para simplificar el panel y evitar contenido cortado. */
html.ep-admin-master #panel-notifications .browser-alert-card{display:none !important}
html.ep-admin-master #panel-notifications .whatsapp-manual-card{grid-column:1 !important;grid-row:1/3 !important}

/* Los nombres largos también quedan contenidos en Confirmación y Seguimiento. */
html.ep-reference-1440 .confirm-page .file-mini>div,
html.ep-reference-1440 .tracking-page .tracking-info-item>div{min-width:0 !important;overflow:hidden !important}
html.ep-reference-1440 .confirm-page .file-mini strong,
html.ep-reference-1440 .tracking-page .tracking-info-item strong{
  display:block !important;
  max-width:100% !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}


/* =========================================================
   v0.9.35 — USO INICIAL: web pública sin cuentas de cliente
   ========================================================= */
.design-page .header-inner.public-no-login{
  grid-template-columns:360px minmax(430px,1fr) 360px;
}
.design-page .header-inner.public-no-login .header-actions{
  width:360px;
}
html.ep-reference-1440 .header-inner.public-no-login{
  grid-template-columns:360px minmax(430px,1fr) 360px !important;
}


/* =========================================================
   v0.9.36 — Acceso protegido al panel administrativo
   ========================================================= */
.admin-top-actions{display:flex;align-items:center;gap:9px}
html.ep-admin-master .admin-logout{height:44px!important;font-size:14px!important;min-width:126px!important;padding:0 14px!important}
.admin-auth-body{margin:0;min-height:100vh;background:#f4f7fb;font-family:Arial,Helvetica,sans-serif;color:#111;display:grid;place-items:center;padding:24px}
.admin-auth-shell{width:100%;display:flex;justify-content:center}
.admin-auth-card{width:min(480px,calc(100vw - 40px));background:#fff;border:1px solid #dce2ea;border-radius:18px;padding:28px 34px 30px;box-shadow:0 16px 45px rgba(7,56,115,.12);text-align:center}
.admin-auth-logo{width:340px;max-width:100%;height:auto;margin:0 auto}
.admin-auth-divider{height:1px;background:#e5e8ed;margin:18px 0 21px}
.admin-auth-icon{width:58px;height:58px;border-radius:50%;background:#e9f1fc;display:grid;place-items:center;margin:0 auto 12px;font-size:28px}
.admin-auth-card h1{font-size:30px;line-height:1.1;margin:0 0 8px;color:#073873}
.admin-auth-card>p{font-size:15px;line-height:1.4;color:#667085;margin:0 0 21px}
.admin-auth-card label{display:block;text-align:left;font-size:14px;font-weight:800;margin:12px 0}
.admin-auth-card input{display:block;width:100%;height:48px;border:1px solid #cbd3de;border-radius:9px;margin-top:6px;padding:0 12px;font-size:17px;outline:none}
.admin-auth-card input:focus{border-color:#285bd4;box-shadow:0 0 0 3px rgba(40,91,212,.10)}
.admin-auth-submit{width:100%;height:52px;margin-top:13px;font-size:18px}
.admin-auth-card small{display:block;color:#7b8492;font-size:12px;line-height:1.4;margin-top:15px}
.admin-auth-error{margin:10px 0 0;background:#fff0f2;border:1px solid #ef9aa3;border-radius:8px;padding:10px 12px;color:#9b1425;font-size:13px;font-weight:700;text-align:left}
html.ep-admin-master .admin-security-card .notification-fields{grid-template-columns:1fr 1fr!important}

/* =========================================================
   v0.9.37 — Envíos locales
   ========================================================= */
.payment-page .delivery-card-copy{min-width:0}
.payment-page .delivery-card-copy .delivery-inline{min-width:0}
.payment-page #deliveryDetail{max-width:430px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payment-page .shipping-price-line strong{color:#073873}

.delivery-modal{position:fixed;inset:0;z-index:900;display:none;align-items:center;justify-content:center;padding:24px}
.delivery-modal.show{display:flex}
.delivery-modal-backdrop{position:absolute;inset:0;background:rgba(5,18,37,.48);backdrop-filter:blur(2px)}
.delivery-modal-card{position:relative;width:min(720px,calc(100vw - 40px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:18px;padding:26px 28px;box-shadow:0 25px 70px rgba(0,0,0,.28)}
.delivery-modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:32px;color:#6b7280;cursor:pointer}
.delivery-modal-heading{display:flex;align-items:center;gap:15px;padding-right:32px}
.delivery-modal-heading>span{width:54px;height:54px;border-radius:12px;background:#ead4ff;color:#7442b6;display:grid;place-items:center;flex:0 0 auto}
.delivery-modal-heading svg{width:31px;height:31px}
.delivery-modal-heading h2{margin:0 0 4px;font-size:26px}.delivery-modal-heading p{margin:0;color:#667085;font-size:14px}
.delivery-mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 16px}
.delivery-mode-btn{min-height:76px;border:1px solid #cfd5dd;border-radius:12px;background:#fff;text-align:left;padding:13px 16px;cursor:pointer;color:#111}
.delivery-mode-btn strong{display:block;font-size:17px}.delivery-mode-btn span{display:block;margin-top:5px;color:#667085;font-size:13px}
.delivery-mode-btn.active{border:2px solid #e60018;background:#fff5f6;padding:12px 15px}
.delivery-modal-panel{border:1px solid #e0e4ea;border-radius:12px;background:#fafbfd;padding:16px}
.delivery-option-summary{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.delivery-option-summary strong{font-size:21px;color:#073873}.delivery-option-summary span{font-size:14px;color:#667085}
.delivery-use-btn{width:100%;height:48px;font-size:16px}
.shipping-rates{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.shipping-rates>span{border:1px solid #d7dde6;background:#fff;border-radius:9px;padding:10px;text-align:center;font-size:13px}.shipping-rates>span b{display:block;font-size:13px;margin-bottom:4px;color:#073873}.shipping-rates>small{grid-column:1/4;text-align:center;color:#667085;font-size:12px;margin-top:2px}
.shipping-address-fields{display:grid;grid-template-columns:1.6fr .8fr;gap:10px}.shipping-address-fields label{font-size:12px;font-weight:800}.shipping-address-fields input{width:100%;height:42px;margin-top:5px;border:1px solid #cbd2dc;border-radius:8px;padding:0 11px;font-size:15px}
.shipping-calc-row{display:grid;grid-template-columns:170px 1fr;gap:12px;align-items:center;margin:13px 0}.shipping-calc-row .btn{height:42px;font-size:14px}.shipping-quote-result{min-height:42px;border-radius:8px;background:#eef4fb;padding:8px 10px;font-size:13px;line-height:1.35;color:#344054}.shipping-quote-result strong{color:#073873}.shipping-quote-result a{color:#164be0;font-weight:800}.shipping-georef-note{display:block;color:#667085;font-size:11px;line-height:1.35;margin-top:9px}

/* Admin · nueva pestaña Envíos */
html.ep-admin-master .admin-shipping-settings{height:auto;max-width:100%;padding:18px !important}
html.ep-admin-master .shipping-settings-grid{grid-template-columns:repeat(2,1fr)!important;gap:9px 12px!important}
html.ep-admin-master .shipping-enable-line{margin:5px 0 12px!important}
html.ep-admin-master .shipping-admin-note{margin-top:12px;border-radius:9px;background:#edf4ff;padding:10px 12px;font-size:13px;color:#475467}
html.ep-admin-master #panel-shipping.active{display:flex;flex-direction:column;min-height:0;flex:1}
html.ep-admin-master #panel-shipping .admin-shipping-settings{flex:1;min-height:0}

@media(max-width:720px){.delivery-mode-buttons,.shipping-address-fields{grid-template-columns:1fr}.shipping-rates{grid-template-columns:1fr}.shipping-rates>small{grid-column:1}.shipping-calc-row{grid-template-columns:1fr}}
.public-price-row.shipping-consult-row b{font-size:14px}.public-price-row.shipping-consult-row a{color:#164be0}


/* =========================================================
   v0.9.38 — Envío automático sin exponer franjas de cuadras
   ========================================================= */
.delivery-modal-card{overflow:hidden}
.shipping-auto-note{
  margin-bottom:13px;
  border-radius:9px;
  background:#edf4ff;
  color:#344054;
  padding:10px 12px;
  font-size:13px;
  font-weight:700;
  line-height:1.35;
}
.shipping-quote-result strong{font-size:15px;color:#073873}
.shipping-quote-result span{display:block;margin-top:2px;color:#475467;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* v0.9.39 — precisión del cálculo de envío */
.shipping-precision-note{display:block;margin-top:4px;color:#667085;font-size:11px;font-weight:600}

/* v0.9.40 — fijación opcional de coordenadas exactas del local */
html.ep-admin-master .shipping-origin-pin{display:flex;align-items:center;gap:12px;min-height:40px}
html.ep-admin-master .shipping-origin-pin .btn{height:36px;font-size:13px}
html.ep-admin-master .shipping-origin-pin span{font-size:12px;color:#667085;font-weight:700}

/* =========================================================
   v0.9.41 — Mercado Pago Checkout Pro
   ========================================================= */
.payment-disabled{opacity:.48;filter:grayscale(.25)}
.payment-disabled input{cursor:not-allowed}
.mp-return-page .stepper{margin-bottom:70px !important}
.mp-return-card{width:720px;min-height:390px;margin:0 auto;background:#fff;border:1px solid #d9dee6;border-radius:18px;box-shadow:0 4px 18px rgba(14,35,67,.10);padding:46px 52px;text-align:center}
.mp-return-icon{width:78px;height:78px;border-radius:50%;margin:0 auto 20px;display:grid;place-items:center;background:#e8f0fb;color:#073873;font-size:38px;font-weight:900}
.mp-return-icon.approved{background:#dff4e7;color:#08743b}.mp-return-icon.pending{background:#fff0c9;color:#8c6500}.mp-return-icon.failure{background:#ffe1e4;color:#a41228}
.mp-return-card h1{font-size:34px;margin:0 0 12px}.mp-return-card p{font-size:18px;line-height:1.5;color:#5f6b7a;margin:0 auto;max-width:560px}.mp-return-code{font-size:18px;font-weight:900;color:#073873;margin-top:22px}.mp-return-actions{margin-top:28px;display:flex;justify-content:center;gap:12px}

/* =========================================================
   v0.9.41 — Panel de pagos / Mercado Pago
   ========================================================= */
.badge.payment-pending{background:#fff0cf;color:#7b5a00}
.mp-net-inline{display:block;margin-top:4px;color:#08743b;font-size:12px;font-weight:800}
.mp-sync-mini{display:inline-flex;margin-top:8px;height:27px;align-items:center;border:1px solid #b7c2d1;border-radius:7px;background:#fff;padding:0 8px;font-size:11px;font-weight:800;cursor:pointer;color:#073873}
.admin-payment-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px;flex:0 0 auto}
.admin-payment-kpis article{height:70px;background:#fff;border:1px solid #dde2e8;border-radius:10px;padding:9px 15px}
.admin-payment-kpis span{display:block;font-size:13px;color:#667085;font-weight:700}
.admin-payment-kpis strong{display:block;font-size:25px;color:#073873;margin-top:3px}
.admin-payments-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:12px;min-height:0;flex:1}
.admin-payments-grid .admin-setting-card{padding:14px !important;overflow:hidden}
.mp-setting-card .setting-heading,.mp-stats-detail .setting-heading{margin-bottom:8px !important}
.mp-setting-card .admin-switch-line{margin:7px 0 8px !important;font-size:14px !important}
.mp-settings-form{gap:7px 10px !important}
.mp-settings-form label{position:relative;font-size:11px !important}
.mp-settings-form input,.mp-settings-form select{display:block;width:100%;height:34px;margin-top:3px;border:1px solid #cbd2dc;border-radius:7px;padding:0 9px;font-size:13px;background:#fff}
.mp-settings-form label small{position:absolute;right:8px;bottom:9px;color:#667085;font-size:10px}
.mp-admin-note{margin-top:8px;padding:8px 10px;border-radius:8px;background:#f4f7fb;color:#667085;font-size:11px;line-height:1.3}
.mp-admin-actions{margin-top:8px !important;gap:8px !important}
.mp-admin-actions .btn{height:36px !important;font-size:13px !important}
#mercadoPagoStatus{font-size:12px;font-weight:800;color:#08743b}
.mp-summary-list{display:grid;gap:8px}
.mp-summary-list>div{border:1px solid #e1e5eb;border-radius:9px;background:#fafbfd;padding:10px 12px}
.mp-summary-list span{display:block;font-size:11px;color:#667085;font-weight:800}
.mp-summary-list strong{display:block;font-size:22px;color:#073873;margin:3px 0}
.mp-summary-list small{font-size:11px;color:#667085}
.mp-summary-list .mp-net-highlight{background:#edf7f0;border-color:#c8e5d2}
.mp-summary-list .mp-net-highlight strong{color:#08743b}
@media(max-width:1100px){html.ep-admin-master .admin-payments-grid{grid-template-columns:1.25fr .75fr !important}html.ep-admin-master .admin-payment-kpis{grid-template-columns:repeat(4,1fr) !important}}

/* v0.9.43 — recuperación manual de email administrativo */
.email-retry-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.admin-order-notify-panel .email-retry-actions .btn{height:36px;font-size:12px;padding:0 12px}


/* =========================================================
   v0.9.44 — Notificaciones completas + solicitud de Factura C
   ========================================================= */
/* Notificaciones: el botón de guardar/prueba debe quedar siempre dentro de la pantalla. */
html.ep-admin-master #panel-notifications .notification-free-grid{
  grid-template-columns:1fr 1fr !important;
  grid-template-rows:284px minmax(0,1fr) !important;
  gap:8px !important;
  height:100% !important;
  min-height:0 !important;
}
html.ep-admin-master #panel-notifications .email-admin-card{
  grid-column:1/3 !important;grid-row:1 !important;
  grid-template-columns:56px minmax(0,1fr) !important;
  overflow:visible !important;
}
html.ep-admin-master #panel-notifications .email-admin-card .settings-form-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:5px 7px !important;
  max-width:none !important;
}
html.ep-admin-master #panel-notifications .email-admin-card .wide-setting{grid-column:1/5 !important}
html.ep-admin-master #panel-notifications .email-admin-card .notification-note{display:none !important}
html.ep-admin-master #panel-notifications .email-admin-card .notification-actions{margin-top:7px !important}
html.ep-admin-master #panel-notifications .admin-security-card{grid-column:2 !important;grid-row:2 !important;overflow:hidden !important}
html.ep-admin-master #panel-notifications .whatsapp-manual-card{grid-column:1 !important;grid-row:2 !important;overflow:hidden !important}
html.ep-admin-master #panel-notifications .whatsapp-manual-card textarea{height:45px !important;min-height:45px !important}

/* Solicitud de factura en Pago */
.invoice-request-row{height:58px;border:1px solid #cfd8e5;border-radius:9px;background:#fbfcfe;margin:8px 0;display:flex;align-items:center;gap:12px;padding:7px 12px}
.invoice-request-row>label{display:flex;align-items:center;gap:10px;min-width:0;flex:1;cursor:pointer}
.invoice-request-row input[type=checkbox]{width:22px;height:22px;accent-color:#073873;flex:0 0 auto}
.invoice-request-row span{min-width:0}.invoice-request-row strong{display:block;font-size:15px;color:#073873}.invoice-request-row small{display:block;font-size:11px;color:#667085;margin-top:2px}
.invoice-data-btn{height:34px;border:1px solid #8ea4c0;border-radius:8px;background:#fff;color:#073873;padding:0 11px;font-size:12px;font-weight:800;cursor:pointer}
.invoice-ready-badge{font-size:11px;font-weight:800;color:#08743b;white-space:nowrap}
.invoice-modal{position:fixed;inset:0;z-index:950;display:none;align-items:center;justify-content:center}.invoice-modal.show{display:flex}.invoice-modal-backdrop{position:absolute;inset:0;background:rgba(5,18,37,.48);backdrop-filter:blur(2px)}
.invoice-modal-card{position:relative;width:min(650px,calc(100vw - 40px));background:#fff;border-radius:16px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.invoice-modal-close{position:absolute;right:14px;top:9px;border:0;background:none;font-size:32px;color:#6b7280;cursor:pointer}.invoice-modal-head{display:flex;gap:14px;align-items:center;margin-bottom:18px}.invoice-modal-head>span{width:54px;height:54px;border-radius:11px;background:#dce8f7;color:#073873;display:grid;place-items:center;font-size:19px;font-weight:900}.invoice-modal-head h2{font-size:25px;margin:0 0 4px}.invoice-modal-head p{font-size:13px;color:#667085;margin:0}.invoice-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.invoice-fields label{font-size:13px;font-weight:800}.invoice-fields input,.invoice-fields select{display:block;width:100%;height:42px;margin-top:5px;border:1px solid #cbd2dc;border-radius:8px;padding:0 10px;font-size:14px;background:#fff}.invoice-wide{grid-column:1/3}.invoice-modal-note{margin-top:13px;background:#f4f7fb;border-radius:8px;padding:9px 11px;font-size:12px;color:#667085}.invoice-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.invoice-modal-actions .btn{height:42px;font-size:14px}

/* Facturación admin */
.billing-admin-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:10px;min-height:0;flex:1}.billing-admin-grid .admin-setting-card{padding:13px !important;min-height:0}.billing-admin-grid .setting-heading{margin-bottom:8px !important}.billing-admin-grid .setting-heading h2{font-size:20px !important}.billing-admin-grid .setting-heading p{font-size:12px !important}.billing-fiscal-fields{gap:6px 8px !important}.billing-fiscal-fields label{font-size:11px !important}.billing-fiscal-fields input{height:32px !important;font-size:13px !important;margin-top:2px !important}.billing-legal-note{margin-top:8px;border-radius:8px;background:#f5f7fb;padding:8px 10px;display:flex;gap:10px;align-items:center}.billing-legal-note strong{color:#073873;white-space:nowrap}.billing-legal-note span{font-size:11px;color:#667085;line-height:1.25}.billing-request-list{display:grid;gap:6px}.billing-request-row{min-height:64px;border:1px solid #e0e4e9;border-radius:9px;padding:7px 9px;display:grid;grid-template-columns:minmax(0,1.5fr) 120px 120px;gap:10px;align-items:center}.billing-request-row strong{display:block;color:#073873;font-size:14px}.billing-request-row span{display:block;font-size:11px;color:#667085;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-request-row b{display:block;font-size:15px}.billing-request-row small{font-size:10px;color:#667085}.billing-request-row .btn{height:33px;padding:0 9px;font-size:11px}.billing-empty{padding:28px;text-align:center;color:#667085;border:1px dashed #cfd5dc;border-radius:9px}.admin-invoice-panel{margin-top:10px;border:1px solid #cbd8e7;border-radius:9px;background:#f5f8fc;padding:9px 11px;display:flex;justify-content:space-between;align-items:center;gap:12px}.admin-invoice-panel.is-issued{background:#edf8f1;border-color:#b9dfc7}.admin-invoice-panel strong{display:block;font-size:13px;color:#073873}.admin-invoice-panel small{display:block;font-size:11px;color:#667085;margin-top:3px}.admin-invoice-panel .btn{height:34px;font-size:11px}.admin-invoice-panel b{font-size:13px;color:#08743b}

.invoice-confirm-note{width:620px;margin:14px auto 0;border-radius:8px;background:#edf7f0;color:#08743b;text-align:center;padding:9px 12px;font-size:13px;font-weight:800}


/* =========================================================
   v0.9.45 — ADMIN: zoom en bloque + scroll cuando se amplía
   Al 100% mantiene el panel contenido. Con Ctrl + no se recalculan
   tarjetas/columnas: se amplía el lienzo maestro y se habilita desplazamiento.
   ========================================================= */
html.ep-admin-master.ep-admin-zoom-scroll,
html.ep-admin-master.ep-admin-zoom-scroll body.admin-compact{
  width:auto !important;
  height:auto !important;
  min-width:100% !important;
  min-height:100% !important;
  overflow:auto !important;
}
html.ep-admin-master.ep-admin-zoom-scroll .admin-stage{
  overflow:visible !important;
}
/* Evita que reglas responsive intenten recomponer el panel durante zoom. */
html.ep-admin-master.ep-admin-zoom-scroll .admin-toolbar{flex-direction:row !important;align-items:center !important}
html.ep-admin-master.ep-admin-zoom-scroll .admin-filters{flex-wrap:nowrap !important}
html.ep-admin-master.ep-admin-zoom-scroll .admin-kpis-v2{grid-template-columns:repeat(4,1fr) !important}
html.ep-admin-master.ep-admin-zoom-scroll .admin-settings-grid{grid-template-columns:1.08fr .92fr !important}

/* v0.9.45b — asegurar desplazamiento horizontal del documento al ampliar. */
html.ep-admin-master.ep-admin-zoom-scroll{
  overflow:auto !important;
}
html.ep-admin-master.ep-admin-zoom-scroll body.admin-compact{
  width:var(--admin-stage-w) !important;
  min-width:var(--admin-stage-w) !important;
  height:var(--admin-stage-h) !important;
  min-height:var(--admin-stage-h) !important;
  overflow:visible !important;
}
html.ep-admin-master.ep-admin-zoom-scroll .admin-stage{
  width:var(--admin-stage-w) !important;
  height:var(--admin-stage-h) !important;
}

/* =========================================================
   v0.9.46 — Multiarchivo, vista previa real, cuenta de cliente
   y más aire visual. El contenido puede crecer verticalmente.
   ========================================================= */

/* HOME: el texto del paso 2 no queda pegado al borde derecho. */
.home-page .how-card{padding-right:20px !important}
.home-page .how-card p{font-size:17px !important;line-height:1.16 !important;white-space:normal !important;overflow-wrap:break-word !important;padding-right:4px !important}

/* Cuenta de cliente */
.access-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center}
.access-modal.show{display:flex}
.access-backdrop{position:absolute;inset:0;background:rgba(5,18,37,.52);backdrop-filter:blur(2px)}
.access-card{position:relative;width:min(520px,calc(100vw - 36px));max-height:calc(100vh - 40px);overflow:auto;background:#fff;border-radius:18px;padding:28px 30px 30px;box-shadow:0 28px 80px rgba(0,0,0,.26)}
.access-close{position:absolute;right:14px;top:9px;border:0;background:none;font-size:32px;color:#667085;cursor:pointer}
.access-icon{width:58px;height:58px;border-radius:14px;background:#e8f0fb;color:#073873;display:grid;place-items:center;margin-bottom:15px}.access-icon svg{width:32px;height:32px}
.account-card h2{font-size:28px;margin:0 0 6px}.account-card>div>p,.account-card #accessBody>p{color:#667085;line-height:1.45;margin:0 0 18px}
.account-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#f0f3f7;border-radius:10px;padding:4px;margin-bottom:16px}.account-tabs button{height:40px;border:0;border-radius:8px;background:transparent;font-weight:800;color:#667085;cursor:pointer}.account-tabs button.active{background:#fff;color:#073873;box-shadow:0 1px 4px rgba(20,40,70,.12)}
.account-form,.account-profile{display:grid;gap:12px}.account-form label,.account-profile label{font-size:13px;font-weight:800;color:#344054}.account-form input,.account-profile input{display:block;width:100%;height:44px;margin-top:5px;border:1px solid #cbd2dc;border-radius:8px;padding:0 11px;font-size:15px}.account-profile input:disabled{background:#f2f4f7;color:#667085}
.account-form .btn{height:46px;margin-top:3px}.account-actions{display:flex;gap:10px;margin-top:17px}.account-actions .btn{height:44px;flex:1}

/* SUBIR: lista para varios archivos */
.multi-upload-page .upload-intro{margin-bottom:26px}
.multi-upload-page .dropzone{min-height:300px !important;height:auto !important;padding:28px 30px !important}
.uploaded-documents{width:1014px;margin:20px auto 0;background:#fff;border:1px solid #d7dde5;border-radius:12px;padding:18px 20px;box-shadow:0 2px 6px rgba(15,35,65,.06)}
.uploaded-documents-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.uploaded-documents-head h3{margin:0;font-size:20px}.uploaded-documents-head p{margin:3px 0 0;color:#667085;font-size:13px}.uploaded-documents-head .btn{height:38px;font-size:13px}
.upload-list{display:grid;gap:8px}.upload-list-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px solid #e1e5eb;border-radius:9px;padding:9px 12px;background:#fafbfd}.upload-list-item>span:first-child{width:38px;height:38px;border-radius:8px;background:#e8f0fb;color:#073873;display:grid;place-items:center;font-weight:900}.upload-list-item strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-list-item small{display:block;color:#667085;margin-top:3px}.upload-remove{border:0;background:#fff1f2;color:#b42336;border-radius:7px;height:32px;padding:0 10px;font-weight:800;cursor:pointer}

/* CONFIGURAR: selector de documentos + vista previa de impresión real */
.document-switcher{width:1315px;margin:-18px auto 22px;border:1px solid #d8dee7;border-radius:12px;background:#fff;padding:15px 16px;box-shadow:0 2px 7px rgba(17,36,66,.07)}
.document-switcher-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:11px}.document-switcher-head strong{display:block;font-size:18px;color:#073873}.document-switcher-head span{display:block;color:#667085;font-size:13px;margin-top:3px}.add-document-btn{height:39px;font-size:13px;white-space:nowrap}
.document-tabs{display:flex;gap:9px;overflow-x:auto;padding:1px 1px 4px}.document-tab{min-width:280px;max-width:360px;height:70px;border:1px solid #d4dae3;border-radius:9px;background:#fafbfd;display:grid;grid-template-columns:31px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 10px;text-align:left;cursor:pointer}.document-tab>span{width:29px;height:29px;border-radius:50%;background:#e5edf8;color:#073873;display:grid;place-items:center;font-weight:900}.document-tab div{min-width:0}.document-tab strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-tab small{display:block;color:#667085;font-size:11px;margin-top:4px}.document-tab b{font-size:14px;color:#073873}.document-tab.active{border:2px solid var(--red);background:#fff6f7;padding:7px 9px}.document-tab.active>span{background:var(--red);color:#fff}
html.ep-reference-1440 .multi-config-page .detected-bar{height:auto !important;min-height:108px !important;margin-bottom:26px !important;padding:17px 18px !important}
html.ep-reference-1440 .multi-config-page .detected-items{flex-wrap:wrap !important;row-gap:7px !important;column-gap:28px !important;line-height:1.3 !important}
.configured-preview-note{height:28px;display:flex;align-items:center;gap:7px;color:#08743b;font-size:12px;font-weight:800}.live-dot{width:8px;height:8px;border-radius:50%;background:#079541;box-shadow:0 0 0 4px #def4e6}
html.ep-reference-1440 .multi-config-page .preview-card{height:690px !important;padding-bottom:15px !important}
html.ep-reference-1440 .multi-config-page .preview-frame{height:424px !important;margin-top:4px !important;padding:14px !important;background:#edf1f5 !important;transition:all .15s ease}
.configured-paper-frame img{width:auto !important;height:auto !important;max-width:94% !important;max-height:94% !important;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.2) !important}
.preview-explainer{display:block;color:#667085;font-size:11px;line-height:1.35;text-align:center;margin-top:-2px;padding:0 6px}
html.ep-reference-1440 .multi-config-page .config-summary{height:auto !important;min-height:690px !important;margin-left:0 !important;padding:24px 18px 18px !important;position:relative !important}
html.ep-reference-1440 .multi-config-page .config-columns{grid-template-columns:380px 590px 295px !important;gap:25px !important;width:1315px !important}
html.ep-reference-1440 .multi-config-page .preview-card{width:380px !important}
html.ep-reference-1440 .multi-config-page .config-summary{width:295px !important}
.summary-documents{display:grid;gap:7px;max-height:275px;overflow:auto;padding-right:2px}.summary-document{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;border:1px solid #e0e5ec;border-radius:8px;background:#fafbfd;padding:9px;cursor:pointer}.summary-document.active{border-color:#f04b59;background:#fff4f5}.summary-document div{min-width:0}.summary-document strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.summary-document small{display:block;font-size:10px;color:#667085;margin-top:4px}.summary-document b{font-size:12px;color:#073873;white-space:nowrap}.active-price-detail>small{display:block;color:#667085;font-weight:800;margin-bottom:11px}.discount-row strong{color:#08743b}.order-files-total{margin-bottom:10px !important;font-weight:800}.multi-config-page .no-hidden{position:static !important;margin-top:18px !important;padding:11px !important;background:#edf7f0 !important;border-radius:8px !important;line-height:1.35 !important}.multi-config-page .config-actions{height:92px !important}

/* PAGO multiarchivo: dejamos crecer la pantalla; no apiñamos información. */
html.ep-reference-1440 .multi-payment-page .payment-grid{grid-template-columns:760px 560px !important;gap:30px !important;align-items:start !important}
html.ep-reference-1440 .multi-payment-page .multi-files-review-card{height:auto !important;min-height:190px !important}
html.ep-reference-1440 .multi-payment-page .multi-review-row{grid-template-columns:68px minmax(0,1fr) !important;align-items:start !important;height:auto !important;padding:18px 20px !important}
.multi-review-copy{min-width:0;width:100%}.multi-review-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.multi-review-heading h3{margin:0 0 4px !important}.multi-review-heading p{margin:0 !important;font-size:13px !important}.payment-edit-files{height:36px;font-size:12px;white-space:nowrap}
.payment-documents{display:grid;gap:9px}.payment-document-row{display:grid;grid-template-columns:31px minmax(0,1fr) 110px;gap:10px;align-items:start;border:1px solid #e1e5eb;border-radius:9px;background:#fafbfd;padding:10px}.payment-document-number{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e7effa;color:#073873;font-weight:900}.payment-document-main{min-width:0}.payment-document-name strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.payment-document-name span{display:block;font-size:11px;color:#667085;margin-top:3px}.payment-document-pills{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.payment-document-pills .config-pill{height:25px !important;font-size:10px !important;padding:0 7px !important;gap:4px !important}.payment-document-pills .pill-icon{width:14px;height:14px}.payment-document-pills .chip-break{display:none}.payment-document-side{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.payment-document-side a{font-size:11px;color:#164be0;font-weight:800}.payment-document-side b{font-size:17px;color:#073873}.payment-document-side small{font-size:10px;color:#667085}
html.ep-reference-1440 .multi-payment-page .aggregate-price-card{height:auto !important;min-height:210px !important}
html.ep-reference-1440 .multi-payment-page .delivery-small-card{height:138px !important}
html.ep-reference-1440 .multi-payment-page .pay-card{width:560px !important;height:auto !important;min-height:770px !important;padding:18px 20px 20px !important}
html.ep-reference-1440 .multi-payment-page.transfer-mode .pay-card{height:auto !important;min-height:855px !important}
html.ep-reference-1440 .multi-payment-page .contact-box{height:auto !important;min-height:168px !important;margin:12px 0 !important;padding:12px !important;background:#f8fbff !important}
.contact-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}.contact-title-row .contact-title{margin:0 !important;font-size:15px !important;line-height:1.25 !important}.contact-title-row small{display:block;color:#667085;font-size:10px;margin-top:3px;line-height:1.3}.account-inline-btn{border:1px solid #8da3c0;border-radius:7px;background:#fff;color:#073873;height:32px;padding:0 10px;font-size:11px;font-weight:800;white-space:nowrap;cursor:pointer}
html.ep-reference-1440 .multi-payment-page .contact-fields-three{grid-template-columns:1fr 1.12fr 1fr !important;gap:7px !important}
html.ep-reference-1440 .multi-payment-page .contact-field label{position:static !important;width:auto !important;height:auto !important;overflow:visible !important;clip:auto !important;display:block !important;font-size:10px !important;margin-bottom:4px !important}
html.ep-reference-1440 .multi-payment-page .contact-field input{height:40px !important;border:1px solid #c7ccd3 !important;border-radius:7px !important;background:#fff !important;font-size:13px !important;font-weight:600 !important;color:#101828 !important;padding:0 9px !important}
.multi-payment-page .whatsapp-consent{display:flex;align-items:flex-start;gap:7px;margin-top:8px;font-size:10px;color:#667085;line-height:1.3}.multi-payment-page .whatsapp-consent input{margin-top:1px;accent-color:#073873}
html.ep-reference-1440 .multi-payment-page .safe-panel{height:auto !important;min-height:112px !important}.multi-payment-page .invoice-request-row{height:auto;min-height:62px}.multi-payment-page .terms{font-size:14px !important;line-height:1.3 !important}.multi-payment-page .terms input{width:28px !important;height:28px !important}

/* CONFIRMACIÓN multiarchivo */
.email-confirmation-chip{display:inline-flex;flex-direction:column;gap:3px;margin-top:12px;background:#eaf6ef;border:1px solid #b9dfc7;border-radius:9px;padding:8px 14px;color:#08743b}.email-confirmation-chip strong{font-size:13px}.email-confirmation-chip span{font-size:11px}
html.ep-reference-1440 .multi-confirm-page .order-number{margin-top:22px !important}
html.ep-reference-1440 .multi-confirm-page .confirm-grid{grid-template-columns:900px 360px !important;gap:30px !important;align-items:start !important}
html.ep-reference-1440 .multi-confirm-page .confirm-order-card{display:block !important;height:auto !important;min-height:330px !important;padding:22px 26px !important}
html.ep-reference-1440 .multi-confirm-page .delivery-card{height:auto !important;min-height:300px !important}
.multi-confirm-page .confirm-file{border-right:0 !important;border-bottom:1px solid #d7dce3;padding:0 0 15px !important;display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.multi-confirm-page .confirm-file h2{margin:0 0 4px !important}.confirm-files-caption{font-size:12px !important;margin:0}.multi-confirm-page .paid-total{border-top:0 !important;margin:0 !important;padding:0 !important;gap:18px;min-width:180px}.confirm-documents{display:grid;gap:9px;margin-top:14px}.confirm-document-card{border:1px solid #e0e4ea;border-radius:9px;background:#fafbfd;padding:10px 12px}.confirm-document-head{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:center}.confirm-document-number{width:28px;height:28px;border-radius:50%;background:#e5edf8;color:#073873;display:grid;place-items:center;font-weight:900}.confirm-document-head div{min-width:0}.confirm-document-head strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.confirm-document-head small{display:block;font-size:10px;color:#667085;margin-top:3px}.confirm-document-head a{font-size:11px;color:#164be0;font-weight:800}.confirm-document-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px 10px;margin:9px 0 0 39px}.confirm-document-specs span{font-size:11px;color:#475467}.confirm-document-specs b{color:#073873;margin-right:5px}.multi-confirm-page .confirmation-actions{margin-top:22px !important}.multi-confirm-page .repeat-bar{height:auto !important;min-height:103px !important}

/* ADMIN Notificaciones: la segunda fila tiene su altura real y se recorre
   dentro de la pestaña, en lugar de cortar el contenido de WhatsApp. */
html.ep-admin-master #panel-notifications.active{overflow-y:auto !important;overflow-x:hidden !important;padding-bottom:18px !important;scrollbar-gutter:stable}
html.ep-admin-master #panel-notifications .notification-free-grid{grid-template-rows:auto auto !important;height:auto !important;min-height:620px !important;align-items:start !important;padding-bottom:12px !important}
html.ep-admin-master #panel-notifications .email-admin-card{min-height:300px !important}
html.ep-admin-master #panel-notifications .admin-security-card{overflow:visible !important;min-height:260px !important}
html.ep-admin-master #panel-notifications .whatsapp-manual-card{overflow:visible !important;min-height:390px !important}
html.ep-admin-master #panel-notifications .whatsapp-manual-card textarea{height:68px !important;min-height:68px !important;resize:vertical !important}
html.ep-admin-master #panel-notifications .customer-email-switch{margin-top:5px !important;color:#073873 !important}

/* ADMIN detalle multiarchivo */
.admin-modal-documents{margin:10px 0;border:1px solid #dce2e9;border-radius:9px;background:#f8fafc;padding:9px}.admin-modal-section-title{font-size:11px;font-weight:900;color:#667085;text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px}.admin-modal-document{padding:7px 8px;border-radius:7px;background:#fff;border:1px solid #e5e8ed;margin-top:5px}.admin-modal-document-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.admin-modal-document-head strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-modal-document-head a{font-size:10px;color:#164be0;font-weight:800;white-space:nowrap}.admin-modal-document>small{display:block;color:#667085;font-size:10px;margin-top:4px;line-height:1.3}
/* Ajustes específicos de la nueva lista de carga. */
html.ep-reference-1440 .multi-upload-page .dropzone{height:auto !important;min-height:330px !important;padding:28px 30px !important}
.multi-upload-page .uploaded-documents-head>div strong{display:block;font-size:18px;color:#073873}.multi-upload-page .uploaded-documents-head>div span{display:block;font-size:12px;color:#667085;margin-top:3px}.add-more-files{height:38px;font-size:12px}
.multi-upload-page .upload-list-item{grid-template-columns:50px minmax(0,1fr) auto 34px}.upload-list-badge{width:44px;height:44px;display:grid;place-items:center}.upload-list-badge .file-folder-badge{transform:scale(.75)}.upload-list-ready{font-size:12px;color:#08743b;font-weight:900;white-space:nowrap}.multi-upload-page .upload-preview-simple,.multi-upload-page .upload-privacy-simple{width:1014px;margin:14px auto 0;border-radius:9px;padding:12px 15px;text-align:center;font-size:13px}.multi-upload-page .upload-preview-simple{background:#edf4ff;color:#344054}.multi-upload-page .upload-privacy-simple{background:#edf7f0;color:#08743b}.multi-upload-page .upload-continue-centered{margin-top:17px;display:flex;justify-content:center}.multi-upload-page .upload-continue-centered .flow-continue{width:270px;height:54px}

/* v0.9.47 — multiarchivo explícito + vista previa realmente regenerada */
.multi-upload-page .dropzone h2 strong{color:#073873;font-weight:900;letter-spacing:.01em}
.multi-upload-page .multi-file-hint{margin-top:7px;color:#596579;font-size:14px;font-weight:700;text-align:center}
.multi-upload-page .dropzone.uploading{opacity:.78;pointer-events:none}
.multi-upload-page .dropzone.uploading .upload-cloud{animation:ep-upload-pulse .8s ease-in-out infinite alternate}
@keyframes ep-upload-pulse{from{transform:translateY(0)}to{transform:translateY(-5px)}}

.multi-config-page .configured-preview-note{height:auto;min-height:36px;display:grid;grid-template-columns:8px auto minmax(0,1fr);gap:8px;align-items:center;padding:3px 0 4px}
.multi-config-page .configured-preview-note>b{justify-self:end;color:#073873;background:#edf4ff;border:1px solid #d5e4fb;border-radius:999px;padding:5px 8px;font-size:10px;white-space:nowrap}
.multi-config-page .configured-paper-frame{position:relative;background:#e9edf2!important;border:1px solid #d5dbe3}
.multi-config-page .configured-paper-frame:after{content:attr(data-paper) ' · ' attr(data-orientation);position:absolute;right:9px;bottom:8px;background:rgba(7,56,115,.9);color:#fff;border-radius:6px;padding:4px 7px;font-size:9px;font-weight:800;letter-spacing:.02em;pointer-events:none}
.multi-config-page .configured-paper-frame img{transition:transform .12s ease,opacity .12s ease!important}
.multi-config-page .configured-paper-frame img.preview-loading{opacity:.42}
.multi-config-page .configured-paper-frame img.preview-error{opacity:.15}
.multi-config-page .active-document-subtotal{margin-top:4px;padding-top:11px;border-top:1px dashed #d6dce4;font-weight:900;color:#073873}
html.ep-reference-1440 .multi-config-page .preview-card{height:720px!important}
html.ep-reference-1440 .multi-config-page .config-summary{min-height:720px!important}
html.ep-reference-1440 .multi-config-page .preview-frame{height:438px!important}
html.ep-reference-1440 .multi-config-page .config-actions{height:102px!important}


/* v0.9.50: verificación visible y multicarga inequívoca */
.build-proof{display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border-radius:999px;background:#eef4ff;border:1px solid #cfddf4;color:#073873;font-size:11px;font-weight:900;letter-spacing:.015em;margin-bottom:8px}
.config-build-proof{margin:0 0 10px 0}
.multi-upload-page .dropzone h2{font-size:24px!important;letter-spacing:.01em}
.multi-upload-page .dropzone h2 strong{color:#073873!important;font-weight:950!important}

/* =========================================================
   v0.9.50 — Multicarga: scroll real + lista limpia y visible
   ========================================================= */
/* Las páginas con contenido variable deben crecer verticalmente. Antes el
   artboard tenía overflow:hidden y cortaba archivos/botones debajo de 1024px. */
body.design-page.multi-upload-page,
body.design-page.multi-config-page{
  height:auto !important;
  min-height:100vh !important;
  overflow-x:hidden !important;
  overflow-y:auto !important;
  display:block !important;
}
body.design-page.multi-upload-page .ep-stage,
body.design-page.multi-config-page .ep-stage{
  overflow:visible !important;
}
body.design-page.multi-upload-page .ep-canvas,
body.design-page.multi-config-page .ep-canvas{
  overflow:visible !important;
}

/* La lista usa un badge compacto propio. Evita que el SVG de carpeta de la
   pantalla de configuración se renderice fuera de tamaño en esta pantalla. */
.multi-upload-page .upload-list-badge{
  width:38px !important;
  height:38px !important;
  border-radius:7px !important;
  background:#e8f0fb !important;
  color:#073873 !important;
  display:grid !important;
  place-items:center !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.02em !important;
  overflow:hidden !important;
}
.multi-upload-page .upload-list-badge .file-folder-badge,
.multi-upload-page .upload-list-badge svg{
  display:none !important;
}

/* Cuando ya hay archivos, la zona de carga deja de ocupar media pantalla:
   conserva el mensaje y botón, pero da prioridad a ver los documentos. */
html.ep-reference-1440 .multi-upload-page.has-files .upload-intro{
  margin-bottom:14px !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .upload-intro h1{
  font-size:48px !important;
  margin-bottom:8px !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .upload-intro p{
  font-size:24px !important;
  margin-bottom:20px !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .dropzone{
  min-height:172px !important;
  height:172px !important;
  padding:16px 24px !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .upload-cloud{
  width:42px !important;
  height:42px !important;
  margin-bottom:1px !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .dropzone h2{
  font-size:24px !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .multi-file-hint{
  font-size:12px !important;
  margin-top:3px !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .dropzone .or,
html.ep-reference-1440 .multi-upload-page.has-files .format-row,
html.ep-reference-1440 .multi-upload-page.has-files .dropzone small,
html.ep-reference-1440 .multi-upload-page.has-files .non-pdf-note{
  display:none !important;
}
html.ep-reference-1440 .multi-upload-page.has-files .upload-btn{
  height:42px !important;
  margin-top:8px !important;
  font-size:16px !important;
}
.multi-upload-page .uploaded-documents{
  margin-top:14px !important;
}
.multi-upload-page .upload-list{
  gap:7px !important;
}
.multi-upload-page .upload-list-item{
  min-height:58px !important;
}
.multi-upload-page .upload-continue-centered{
  padding-bottom:32px !important;
}

/* En configuración la hoja renderizada conserva visualmente la proporción real
   de A4/Oficio y vertical/horizontal, sin que un ancho fijo la haga parecer igual. */
.multi-config-page .configured-paper-frame img{
  width:auto !important;
  height:auto !important;
  max-width:96% !important;
  max-height:96% !important;
  object-fit:contain !important;
}
.multi-config-page .configured-paper-frame[data-orientation="Horizontal"] img{
  max-width:98% !important;
  max-height:88% !important;
}
.multi-config-page .configured-paper-frame[data-orientation="Vertical"] img{
  max-width:88% !important;
  max-height:98% !important;
}

/* =========================================================
   v0.9.50 — Configuración sin recortes + precios detallados
   ========================================================= */
/* La pantalla de configuración ahora tiene contenido variable (varios archivos,
   detalle de precios y acciones). El lienzo puede crecer; preferimos scroll a
   recortar o apretar información. */
html.ep-reference-1440 body.design-page.multi-config-page .ep-stage{
  overflow:visible !important;
}
html.ep-reference-1440 body.design-page.multi-config-page .ep-canvas{
  height:auto !important;
  min-height:1420px !important;
  overflow:visible !important;
}
html.ep-reference-1440 body.design-page.multi-config-page .flow-main{
  min-height:1320px !important;
  padding-bottom:54px !important;
}
html.ep-reference-1440 body.design-page.multi-config-page .config-columns{
  width:1350px !important;
  grid-template-columns:380px 590px 330px !important;
  gap:25px !important;
  align-items:start !important;
}
html.ep-reference-1440 body.design-page.multi-config-page .config-summary{
  width:330px !important;
  height:auto !important;
  min-height:760px !important;
  overflow:visible !important;
  padding:24px 18px 20px !important;
}
html.ep-reference-1440 body.design-page.multi-config-page .config-center{
  padding-bottom:28px !important;
}
html.ep-reference-1440 body.design-page.multi-config-page .config-actions{
  height:auto !important;
  min-height:104px !important;
  padding-top:28px !important;
  padding-bottom:12px !important;
  align-items:center !important;
}

/* Acciones de archivo dentro de Configurar. */
.document-switcher-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.remove-document-btn{height:39px;padding:0 14px;border:1px solid #e4a5ac;background:#fff7f8;color:#b42336;font-size:13px;font-weight:800;border-radius:9px;cursor:pointer}
.remove-document-btn:hover{background:#fff0f2;border-color:#d96e7a}

/* La lista de archivos del resumen debe verse completa; si el pedido crece,
   crece la página en vez de sumar otro scroll interno. */
.multi-config-page .summary-documents{max-height:none !important;overflow:visible !important;gap:8px !important}
.multi-config-page .summary-document{min-height:58px !important;padding:10px !important}
.multi-config-page .summary-document strong{font-size:12px !important}
.multi-config-page .summary-document small{font-size:10.5px !important;line-height:1.25 !important}

/* Desglose de precio del archivo seleccionado. */
.multi-config-page .active-price-detail>small{font-size:12px !important;margin-bottom:10px !important;color:#667085 !important}
.multi-config-page .price-breakdown-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #edf0f4}
.multi-config-page .price-breakdown-row>div{min-width:0}
.multi-config-page .price-breakdown-row span{display:block;font-size:14px;font-weight:800;color:#1f2937;line-height:1.15}
.multi-config-page .price-breakdown-row small{display:block;margin-top:3px;font-size:10.5px;line-height:1.25;color:#667085;white-space:normal}
.multi-config-page .price-breakdown-row>strong{font-size:14px;white-space:nowrap;color:#073873}
.multi-config-page .price-breakdown-row>strong.discount-value{color:#08743b}
.multi-config-page .active-document-subtotal{margin-top:8px !important;margin-bottom:0 !important;padding-top:13px !important;font-size:15px !important}
.multi-config-page .summary-rule{margin:14px 0 !important}
.multi-config-page .order-files-total{font-size:15px !important;margin-bottom:12px !important}
.multi-config-page .summary-total{margin-top:14px !important;padding-top:15px !important;border-top:2px solid #dfe4ea !important}
.multi-config-page .summary-total strong{font-size:30px !important}
.multi-config-page .no-hidden{margin-top:16px !important}

/* Upload: la explicación inferior es una oración corrida, no varios bloques. */
html.ep-reference-1440 body.design-page.multi-upload-page .upload-preview-simple{
  display:block !important;
  width:1014px !important;
  height:auto !important;
  min-height:46px !important;
  padding:12px 20px !important;
  line-height:1.45 !important;
  text-align:center !important;
  white-space:normal !important;
}
html.ep-reference-1440 body.design-page.multi-upload-page .upload-preview-simple>span{
  display:inline !important;
  font-size:14px !important;
  line-height:1.45 !important;
}
html.ep-reference-1440 body.design-page.multi-upload-page .upload-preview-simple strong{
  display:inline !important;
  white-space:normal !important;
}

/* =========================================================
   v0.9.65 — Franjas de retiro + bloqueo manual + envíos por período
   ========================================================= */
html.ep-admin-master #panel-settings.active,
html.ep-admin-master #panel-shipping.active{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-right:7px;
  scrollbar-gutter:stable;
}
html.ep-admin-master #panel-settings .admin-settings-grid{align-items:start}
.production-rules-note{
  display:flex;gap:8px;align-items:flex-start;margin:0 0 10px;padding:9px 10px;
  border:1px solid #cfe0f5;border-radius:9px;background:#f4f8fd;color:#40516a;
  font-size:12px;line-height:1.35
}
.production-rules-note strong{color:#073873;white-space:nowrap}.production-rules-note span{font-weight:650}
.pickup-slot-manager{margin-top:10px;border-top:1px solid #e2e7ee;padding-top:10px}
.pickup-slot-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}
.pickup-slot-manager-head h3{font-size:15px;margin:0 0 3px;color:#172033}
.pickup-slot-manager-head p{font-size:11px;line-height:1.35;color:#667085;margin:0;max-width:650px}
.pickup-slot-manager-head .btn{height:32px;padding:0 11px;font-size:11px;flex:0 0 auto}
.pickup-slots-list{display:flex;flex-direction:column;gap:7px;min-height:44px}
.pickup-slot-day{display:grid;grid-template-columns:92px 1fr;gap:9px;align-items:start}
.pickup-slot-day-label{font-size:11px;font-weight:900;color:#344054;padding-top:7px}
.pickup-slot-chips{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
.pickup-slot-chip{min-width:0;border:1px solid #cfd8e5;border-radius:8px;background:#fff;padding:6px 6px;text-align:left;cursor:pointer;color:#213047}
.pickup-slot-chip strong{display:block;font-size:11px;color:#073873}.pickup-slot-chip span{display:block;font-size:9px;line-height:1.2;margin-top:2px;white-space:normal}.pickup-slot-chip small{display:block;font-size:9px;font-weight:900;margin-top:4px;color:#395d8e}
.pickup-slot-chip.available:hover{border-color:#2d6cd3;background:#f5f9ff}.pickup-slot-chip.almost-full{border-color:#e6b84b;background:#fff9e9}.pickup-slot-chip.full{border-color:#d5d9df;background:#f3f4f6;color:#7c8592}.pickup-slot-chip.manual-blocked{border-color:#ef9aa4;background:#fff1f3}.pickup-slot-chip.manual-blocked strong,.pickup-slot-chip.manual-blocked small{color:#a41228}.pickup-slot-chip:disabled{cursor:default;opacity:.55}
.pickup-slots-empty{font-size:12px;color:#667085;padding:8px}

.delivery-demand-control{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:4px 0 13px;padding:12px 14px;border:1px solid #cfe0f5;background:#f5f9ff;border-radius:10px}
.delivery-demand-control strong{display:block;font-size:14px;color:#073873}.delivery-demand-control span{display:block;font-size:12px;color:#5f6b7a;margin-top:3px}.delivery-demand-control .btn{height:36px;font-size:12px;white-space:nowrap}.delivery-demand-control .btn.is-blocked{border-color:#138047;color:#08743b;background:#edf8f1}
.shipping-window-admin-note{display:flex;gap:10px;align-items:flex-start;margin-top:12px;padding:10px 12px;border-radius:9px;background:#edf8f1;color:#41564a;font-size:12px;line-height:1.4}.shipping-window-admin-note strong{color:#08743b;white-space:nowrap}

.delivery-modal-card{overflow:auto !important}
.shipping-window-info{margin-bottom:12px;padding:12px 14px;border:1px solid #cfe0f5;border-radius:10px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:3px 14px;align-items:center}
.shipping-window-info>span{font-size:11px;font-weight:800;color:#667085;text-transform:uppercase;letter-spacing:.03em}.shipping-window-info strong{font-size:18px;color:#073873;text-align:right}.shipping-window-info small{grid-column:1/3;font-size:12px;color:#4e5f73;margin-top:3px}.shipping-window-info.same-day{border-color:#abd6ba;background:#f3fbf6}.shipping-window-info.same-day strong{color:#08743b}.shipping-window-info.next-day{background:#f5f8fc}
.shipping-window-inline{display:block;margin-top:5px;color:#08743b;font-size:12px;font-weight:800}
.punctual-delivery-advice{margin:12px 0 2px;padding:11px 12px;border-left:4px solid #164be0;border-radius:8px;background:#f2f6ff;color:#41516a;font-size:12px;line-height:1.4}.punctual-delivery-advice strong{display:block;color:#073873;margin-bottom:3px}.punctual-delivery-advice span{display:block}.punctual-delivery-advice b{color:#e60018}
.payment-page .pickup-reserve-note{white-space:normal;line-height:1.25}

@media(max-width:1200px){
  .pickup-slot-chips{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .pickup-slot-day{grid-template-columns:1fr}.pickup-slot-day-label{padding-top:0}.pickup-slot-chips{grid-template-columns:1fr 1fr}.delivery-demand-control{align-items:flex-start;flex-direction:column}.shipping-window-info{grid-template-columns:1fr}.shipping-window-info strong{text-align:left}.shipping-window-info small{grid-column:1}
}

/* =========================================================
   v0.9.65 — Franjas habituales editables + historial cliente
   ========================================================= */
.pickup-template-manager{margin-top:12px;padding:12px;border:1px solid #d7e1ef;border-radius:10px;background:#f9fbfe}
.pickup-slot-definitions{display:grid;gap:7px}
.pickup-slot-definition-row{display:grid;grid-template-columns:30px 1fr 24px 1fr 92px;gap:8px;align-items:end;padding:8px 9px;border:1px solid #dbe2eb;border-radius:8px;background:#fff}
.pickup-slot-definition-row label{font-size:10px;font-weight:850;color:#566277}
.pickup-slot-definition-row input{display:block;width:100%;height:34px;margin-top:3px;border:1px solid #cbd3df;border-radius:7px;padding:0 8px;font-size:12px;background:#fff}
.pickup-slot-number{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;align-self:center;background:#e8f0fb;color:#073873;font-size:11px;font-weight:900}
.pickup-slot-arrow{align-self:center;text-align:center;color:#7b8798;font-weight:900}
.pickup-slot-remove{height:34px;border:1px solid #efb6bd;border-radius:7px;background:#fff5f6;color:#b42336;font-size:10px;font-weight:900;cursor:pointer}
.pickup-slot-remove:disabled{opacity:.4;cursor:not-allowed}
.pickup-template-note{margin-top:9px;font-size:10px;line-height:1.35;color:#667085}
.header-account-btn{height:48px;min-width:168px;border:1px solid #c8cfd9;border-radius:16px;background:#fff;color:#172033;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:0 14px;font-size:15px;font-weight:850;cursor:pointer}
.header-account-btn:hover{border-color:#8da6c9;background:#f7faff}.header-account-icon{width:23px;height:23px;color:#073873}
.design-page .header-inner.public-no-login .header-actions{display:flex;justify-content:flex-end;align-items:center}
.account-card.with-history{width:min(780px,calc(100vw - 36px));max-height:calc(100vh - 30px)}
.account-card.with-history .account-profile{grid-template-columns:1fr 1fr 1fr;gap:10px}
.account-orders-section{margin-top:22px;padding-top:18px;border-top:1px solid #e2e7ee}
.account-orders-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:11px}
.account-orders-heading h3{margin:0;color:#073873;font-size:18px}.account-orders-heading p{margin:4px 0 0;color:#667085;font-size:12px;line-height:1.35}
.account-orders-refresh{border:1px solid #cbd3df;background:#fff;color:#344054;border-radius:8px;height:34px;padding:0 10px;font-size:11px;font-weight:850;cursor:pointer;white-space:nowrap}
.customer-order-history{display:grid;gap:8px;max-height:310px;overflow:auto;padding-right:3px}
.customer-order-row{border:1px solid #dce2ea;border-radius:10px;padding:11px 12px;background:#fbfcfe}
.customer-order-main{display:flex;justify-content:space-between;gap:12px;align-items:center}
.customer-order-code strong{display:block;color:#172033;font-size:14px}.customer-order-code span{display:block;margin-top:2px;color:#7a8492;font-size:10px}
.customer-order-status{border-radius:999px;padding:5px 8px;background:#eef2f7;color:#45546a;font-size:10px;font-weight:900;white-space:nowrap}
.customer-order-status.status-listo_para_retirar{background:#eaf8ef;color:#08743b}.customer-order-status.status-en_impresion{background:#edf4ff;color:#135bbb}.customer-order-status.status-pendiente_pago{background:#fff5dc;color:#8a5a00}.customer-order-status.status-entregado{background:#f0f1f3;color:#596273}
.customer-order-meta{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:9px;font-size:11px;color:#667085}.customer-order-meta span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-order-meta strong{color:#073873;font-size:13px}
.customer-order-link{display:inline-block;margin-top:8px;color:#e60018;font-size:11px;font-weight:900;text-decoration:none}.customer-order-link:hover{text-decoration:underline}
.customer-orders-loading,.customer-orders-empty{padding:18px;border:1px dashed #cbd3df;border-radius:9px;text-align:center;color:#667085;font-size:12px}.customer-orders-empty strong,.customer-orders-empty span{display:block}.customer-orders-empty strong{color:#344054;margin-bottom:4px}
@media(max-width:720px){.pickup-slot-definition-row{grid-template-columns:26px 1fr 18px 1fr}.pickup-slot-remove{grid-column:2/5;width:100%}.account-card.with-history .account-profile{grid-template-columns:1fr}.customer-order-meta{grid-template-columns:1fr auto}.customer-order-meta span:nth-child(2){grid-column:1/3;grid-row:2}.account-orders-heading{flex-direction:column}.account-orders-refresh{width:100%}}

/* =========================================================
   v0.9.65 — multicarga sin recortes + Mi cuenta completa
   ========================================================= */
body.design-page.multi-upload-page{height:auto!important;min-height:100vh!important;overflow-y:auto!important}
html.ep-reference-1440 body.design-page.multi-upload-page .ep-stage{overflow:visible!important;min-height:100vh!important}
html.ep-reference-1440 body.design-page.multi-upload-page .ep-canvas{height:auto!important;min-height:1280px!important;overflow:visible!important}
html.ep-reference-1440 body.design-page.multi-upload-page .flow-main{height:auto!important;min-height:1180px!important;padding-bottom:110px!important;overflow:visible!important}
.multi-upload-page .uploaded-documents,.multi-upload-page .upload-preview-simple,.multi-upload-page .upload-privacy-simple,.multi-upload-page .upload-continue-centered{position:relative!important;z-index:1!important}
.multi-upload-page .upload-privacy-simple{margin-top:16px!important}
.multi-upload-page .upload-continue-centered{margin-top:18px!important;padding-bottom:70px!important}

/* Aviso visible de conservación de trabajos */
.pickup-retention-notice{width:100%;border:1px solid #f0d38b;background:#fff9e9;border-radius:10px;padding:12px 14px;color:#6c5315;font-size:12px;line-height:1.45;font-weight:700}
.pickup-retention-notice strong{color:#4f3b0c}
.multi-payment-page .pickup-retention-notice{margin-top:-2px}
.confirm-retention-note{margin-top:12px;border:1px solid #f0d38b;background:#fff9e9;border-radius:9px;padding:10px 12px;color:#6c5315;font-size:11px;line-height:1.4;font-weight:700}
.tracking-retention-note{margin-top:12px;border:1px solid #f0d38b;background:#fff9e9;border-radius:9px;padding:10px 12px;color:#6c5315;font-size:12px;font-weight:700;line-height:1.4}

/* Página completa de cuenta */
body.design-page.account-page,body.design-page.terms-page{height:auto!important;min-height:100vh!important;overflow-x:hidden!important;overflow-y:auto!important;display:block!important;background:#f6f8fb}
html.ep-reference-1440 body.design-page.account-page .ep-stage,html.ep-reference-1440 body.design-page.terms-page .ep-stage{overflow:visible!important;background:#f6f8fb!important}
html.ep-reference-1440 body.design-page.account-page .ep-canvas,html.ep-reference-1440 body.design-page.terms-page .ep-canvas{height:auto!important;min-height:1250px!important;overflow:visible!important;background:#f6f8fb!important}
.account-main,.terms-main{min-height:1150px!important;padding:34px 0 80px!important}
.account-page-wrap{width:1320px;margin:0 auto}
.account-page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:24px}
.account-kicker{display:block;color:#e30620;font-size:12px;font-weight:950;letter-spacing:.09em;margin-bottom:7px}
.account-page-heading h1{font-size:42px;line-height:1.05;color:#0b1f39;margin:0 0 8px;letter-spacing:-1px}.account-page-heading p{margin:0;color:#667085;font-size:16px}.account-logout-top{height:42px;margin-top:10px}
.account-page-loading{background:#fff;border:1px solid #dce2e9;border-radius:14px;padding:28px;text-align:center;color:#667085;font-weight:800}
.account-profile-card,.account-history-card{background:#fff;border:1px solid #dce2e9;border-radius:15px;box-shadow:0 3px 12px rgba(17,36,66,.06);padding:22px 24px}
.account-history-card{margin-top:22px}
.account-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.account-section-head h2{margin:0 0 4px;color:#073873;font-size:24px}.account-section-head p{margin:0;color:#667085;font-size:13px}.account-profile-mark{background:#edf4ff;color:#073873;border-radius:999px;padding:6px 11px;font-size:11px;font-weight:900}
.account-profile-grid{display:grid;grid-template-columns:1.2fr 1.2fr 1fr;gap:14px}.account-profile-grid label{font-size:12px;color:#475467;font-weight:900}.account-profile-grid input{display:block;width:100%;height:45px;margin-top:6px;border:1px solid #cbd2dc;border-radius:9px;padding:0 12px;font-size:14px;background:#fff}.account-profile-grid input:disabled{background:#f2f4f7;color:#667085}.account-profile-actions{display:flex;align-items:center;gap:14px;margin-top:16px}.account-profile-actions .btn{height:42px}.account-profile-actions span{font-size:12px;color:#08743b;font-weight:900}
.account-orders-full{display:grid;gap:14px}.account-order-card-full{border:1px solid #dfe5ec;border-radius:12px;background:#fbfcfe;padding:16px 17px}.account-order-top{display:grid;grid-template-columns:minmax(0,1fr) auto 130px;gap:16px;align-items:center}.account-order-code-label{display:block;font-size:9px;color:#667085;font-weight:950;letter-spacing:.08em}.account-order-top h3{margin:3px 0 2px;color:#073873;font-size:20px}.account-order-top small{color:#667085;font-size:11px}.account-order-status-pill{border-radius:999px;padding:7px 11px;font-size:11px;font-weight:900;background:#edf1f5;color:#475467;white-space:nowrap}.account-order-status-pill.received{background:#edf4ff;color:#174ea6}.account-order-status-pill.printing{background:#fff4e5;color:#9a6700}.account-order-status-pill.ready{background:#eaf8ef;color:#08743b}.account-order-status-pill.delivered{background:#f0f1f3;color:#344054}.account-order-total{text-align:right}.account-order-total span{display:block;color:#667085;font-size:10px;font-weight:800}.account-order-total strong{display:block;color:#073873;font-size:22px;margin-top:2px}
.account-order-times{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.account-order-times>div,.account-order-info>div{border:1px solid #e3e7ed;border-radius:8px;background:#fff;padding:9px 10px}.account-order-times span,.account-order-info span{display:block;color:#667085;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.account-order-times strong{display:block;color:#344054;font-size:11px;margin-top:4px}.account-order-info{display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:8px;margin-top:8px}.account-order-info strong{display:block;color:#344054;font-size:12px;margin-top:4px}.account-order-info small{display:block;color:#667085;font-size:10px;margin-top:3px}
.account-order-files{display:grid;gap:6px;margin-top:10px}.account-order-file{display:grid;grid-template-columns:27px minmax(0,1fr) 80px;gap:9px;align-items:center;border:1px solid #e3e7ed;background:#fff;border-radius:8px;padding:8px 10px}.account-file-number{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#e8f0fb;color:#073873;font-size:10px;font-weight:900}.account-file-copy{min-width:0}.account-file-copy strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-file-copy small{display:block;font-size:9px;color:#667085;margin-top:3px}.account-order-file b{text-align:right;color:#073873;font-size:12px}.account-order-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:10px}.account-order-bottom>span{font-size:10px;color:#8a6714;font-weight:800}.account-order-bottom .btn{height:34px;font-size:11px}

/* Términos y condiciones */
.terms-wrap{width:1080px;margin:0 auto;background:#fff;border:1px solid #dce2e9;border-radius:16px;box-shadow:0 3px 12px rgba(17,36,66,.06);padding:34px 42px 40px}.terms-heading{border-bottom:1px solid #e3e7ed;padding-bottom:20px;margin-bottom:20px}.terms-heading>span{display:block;color:#e30620;font-size:11px;font-weight:950;letter-spacing:.09em;margin-bottom:7px}.terms-heading h1{font-size:36px;color:#0b1f39;margin:0 0 7px}.terms-heading p{margin:0;color:#667085;font-size:12px}.terms-wrap section{margin-top:20px}.terms-wrap h2{font-size:18px;color:#073873;margin:0 0 7px}.terms-wrap p{font-size:13px;line-height:1.62;color:#475467;margin:0}.terms-wrap a{color:#164be0;font-weight:800}.terms-important{border:1px solid #f0d38b;background:#fff9e9;border-radius:11px;padding:14px 16px}.terms-important strong{display:block;color:#6c5315;font-size:14px;margin-bottom:5px}.terms-important p{color:#6c5315}.terms-legal{margin-top:28px;padding-top:18px;border-top:1px solid #dfe4ea;display:flex;flex-direction:column;gap:4px;color:#667085;font-size:11px}.terms-legal strong{color:#073873;font-size:14px}

@media(max-width:900px){.account-page-wrap,.terms-wrap{width:92%}.account-profile-grid,.account-order-times,.account-order-info{grid-template-columns:1fr}.account-order-top{grid-template-columns:1fr}.account-order-status-pill{justify-self:start}.account-order-total{text-align:left}.account-page-heading{flex-direction:column}.terms-wrap{padding:25px}}


/* =========================================================
   v0.9.65 — confirmación larga + pedidos en tiempo real
   ========================================================= */
body.design-page.multi-confirm-page{height:auto!important;min-height:100vh!important;overflow-x:hidden!important;overflow-y:auto!important;display:block!important}
html.ep-reference-1440 body.design-page.multi-confirm-page .ep-stage{overflow:visible!important;min-height:100vh!important}
html.ep-reference-1440 body.design-page.multi-confirm-page .ep-canvas{height:auto!important;min-height:1180px!important;overflow:visible!important}
html.ep-reference-1440 body.design-page.multi-confirm-page .flow-main{height:auto!important;min-height:1080px!important;padding-bottom:110px!important;overflow:visible!important}
.multi-confirm-page .confirm-order-card,.multi-confirm-page .multi-confirm-order-card,.multi-confirm-page .confirm-documents{max-height:none!important;overflow:visible!important}
.multi-confirm-page .confirm-grid{align-items:start!important}

.admin-tab{position:relative}
.admin-tab-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#e60018;color:#fff;font-size:10px;font-weight:950;margin-left:5px;vertical-align:middle}
.admin-tab-badge[hidden]{display:none!important}
.admin-order-card.admin-order-new-arrival{border-color:#ef001e!important;box-shadow:0 0 0 3px rgba(230,0,24,.10),0 8px 20px rgba(17,36,66,.10)!important;animation:epNewOrderPulse 1.2s ease 2}
@keyframes epNewOrderPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.admin-new-order-alert{position:fixed;top:22px;right:22px;width:min(405px,calc(100vw - 44px));z-index:999999;border:2px solid #e60018;border-radius:15px;background:#fff;box-shadow:0 18px 48px rgba(19,36,67,.28);padding:16px 17px;opacity:0;transform:translateY(-14px);pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.admin-new-order-alert.show{opacity:1;transform:translateY(0);pointer-events:auto}
.admin-new-order-alert-head{display:flex;align-items:center;gap:10px;color:#073873;font-weight:950;font-size:17px}.admin-new-order-alert-bell{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#ffe8eb;color:#e60018;font-size:20px}.admin-new-order-alert-code{display:block;margin-top:9px;color:#e60018;font-weight:950;font-size:20px}.admin-new-order-alert-copy{margin-top:5px;color:#475467;font-size:12px;line-height:1.45}.admin-new-order-alert-actions{display:flex;gap:8px;margin-top:13px}.admin-new-order-alert-actions button{height:36px;border-radius:8px;padding:0 13px;font-size:11px;font-weight:900;cursor:pointer}.admin-new-order-open{border:0;background:#e60018;color:#fff}.admin-new-order-close{border:1px solid #cfd6df;background:#fff;color:#475467}
.admin-alert-toggle.active{border-color:#8bd1a3!important;background:#edf9f1!important;color:#08743b!important}.admin-alert-settings{display:grid;grid-template-columns:1fr 1fr minmax(180px,.9fr) minmax(190px,1.2fr);gap:10px;margin:12px 0}.admin-alert-duration{display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;font-size:11px;font-weight:850;color:#475467}.admin-alert-duration select{height:34px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#073873;font:inherit;font-weight:850;padding:0 9px}.admin-alert-volume{display:grid;grid-template-columns:auto 1fr 38px;gap:8px;align-items:center;font-size:11px;font-weight:850;color:#475467}.admin-alert-volume input{width:100%;accent-color:#e60018}.admin-alert-volume span{text-align:right;color:#073873;font-weight:900}
@media(max-width:900px){.admin-alert-settings{grid-template-columns:1fr}.admin-new-order-alert{top:12px;right:12px;width:calc(100vw - 24px)}}


/* =========================================================
   v0.9.65 — dirección, acceso admin y pulido visual
   ========================================================= */
/* En Mi cuenta no repetimos el acceso a Mi cuenta. El CTA conserva la
   identidad del resto del sitio, pero en una escala más contenida. */
.account-page .header-actions{gap:0!important}
.account-page .header-primary{
  width:auto !important;
  min-width:205px !important;
  height:48px !important;
  padding:0 22px !important;
  border:1px solid #e60018 !important;
  border-radius:14px !important;
  background:#e60018 !important;
  color:#fff !important;
  box-shadow:none !important;
  font-size:16px !important;
  font-weight:850 !important;
  letter-spacing:0 !important;
}
.account-page .header-primary:hover{
  background:#cc0015 !important;
  border-color:#cc0015 !important;
  transform:none !important;
}
html.ep-admin-master #panel-shipping .admin-shipping-settings{
  flex:0 0 auto !important;
  min-height:max-content !important;
}
html.ep-admin-master #panel-shipping .shipping-save-row{
  position:static !important;
  width:100% !important;
  margin:18px 0 0 !important;
  padding:16px 0 0 !important;
  border-top:1px solid #e2e7ee;
  justify-content:flex-end !important;
  flex:0 0 auto !important;
  height:auto !important;
}
html.ep-admin-master #panel-shipping .shipping-save-row .btn{
  height:40px !important;
  padding:0 18px !important;
}

.shipping-distance-note{display:block;margin-top:5px;color:#667085;font-size:11px;line-height:1.35}

/* v0.9.65 — cálculo de envíos por km + ubicación exacta opcional */
.shipping-location-tools{display:flex;align-items:center;gap:12px;margin:10px 0 4px;flex-wrap:wrap}
.shipping-location-tools .btn{height:40px;font-size:13px}
.shipping-location-tools span{font-size:11px;line-height:1.35;color:#667085;flex:1;min-width:220px}
.shipping-precision-note.exact{color:#08743b;font-weight:800}
@media(max-width:720px){.shipping-location-tools{align-items:stretch;flex-direction:column}.shipping-location-tools span{min-width:0}}

/* =========================================================
   v0.9.65 — autocompletado de direcciones de envío
   ========================================================= */
.shipping-address-fields-autocomplete{align-items:start}
.shipping-address-label{min-width:0}
.address-autocomplete-wrap{position:relative;margin-top:5px}
.address-autocomplete-wrap>input{margin-top:0!important}
.shipping-address-fields input[readonly]{background:#f4f6f8;color:#667085;cursor:default}
.shipping-address-help{display:block;margin-top:6px;color:#667085;font-size:11px;font-weight:600;line-height:1.35}
.address-suggestions{position:absolute;left:0;right:0;top:calc(100% + 5px);z-index:120;background:#fff;border:1px solid #cfd6e1;border-radius:10px;box-shadow:0 14px 32px rgba(21,43,78,.18);max-height:265px;overflow:auto;padding:5px}
.address-suggestion-item{width:100%;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;border:0;border-bottom:1px solid #edf0f4;background:#fff;text-align:left;padding:10px 9px;cursor:pointer;border-radius:7px;color:#172b4d}
.address-suggestion-item:last-child{border-bottom:0}
.address-suggestion-item:hover,.address-suggestion-item.active{background:#f0f5ff}
.address-suggestion-pin{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#eef4fb;color:#073873;font-size:16px;font-weight:900}
.address-suggestion-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.address-suggestion-copy strong{font-size:12px;line-height:1.3;color:#172b4d;white-space:normal}
.address-suggestion-copy small{font-size:10px;line-height:1.3;color:#667085}
.address-suggestion-ready{font-size:10px;font-weight:900;color:#08743b;background:#edf9f1;border-radius:999px;padding:4px 7px;white-space:nowrap}
.address-suggestion-ready.street{color:#344054;background:#f1f3f6}
.address-suggestion-empty{padding:12px 10px;color:#667085;font-size:11px;line-height:1.4}
.shipping-selection-status{display:flex;gap:9px;align-items:center;margin:11px 0 8px;padding:9px 11px;border:1px solid #d8dee8;border-radius:9px;background:#f8fafc;color:#475467}
.shipping-selection-status>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#eef2f6;font-weight:900;flex:0 0 auto}
.shipping-selection-status>div{min-width:0;display:flex;flex-direction:column;gap:1px}
.shipping-selection-status strong{font-size:11px;color:#344054}
.shipping-selection-status small{font-size:10px;line-height:1.3;color:#667085}
.shipping-selection-status.selected{border-color:#a7dcb7;background:#f1faf4}
.shipping-selection-status.selected>span{background:#dbf2e2;color:#08743b}
.shipping-selection-status.selected strong{color:#08743b}
.shipping-quote-autocomplete{margin:8px 0 12px;min-height:48px}
@media(max-width:720px){.address-suggestions{max-height:220px}.address-suggestion-item{grid-template-columns:28px minmax(0,1fr)}.address-suggestion-ready{display:none}}


/* =========================================================
   v0.9.65 — ZOOM DE NAVEGADOR SIN RECORTES
   La geometría visual queda congelada durante Ctrl +/- y el documento habilita
   desplazamiento. Esto evita que el zoom recompute el lienzo o lo recorte.
   ========================================================= */
html.ep-browser-zoom,
html.ep-browser-zoom body.design-page{
  height:auto !important;
  min-height:100% !important;
  overflow:auto !important;
}
html.ep-reference-1440.ep-browser-zoom body.design-page .ep-stage{
  width:var(--ep-zoom-stage-w) !important;
  min-width:var(--ep-zoom-stage-w) !important;
  height:var(--ep-zoom-stage-h) !important;
  min-height:var(--ep-zoom-stage-h) !important;
  overflow:visible !important;
}
html.ep-reference-1440.ep-browser-zoom body.design-page .ep-canvas{
  overflow:visible !important;
}
html.ep-browser-zoom:not(.ep-reference-1440) body.design-page .ep-stage{
  width:var(--ep-zoom-stage-w) !important;
  min-width:var(--ep-zoom-stage-w) !important;
  height:var(--ep-zoom-stage-h) !important;
  min-height:var(--ep-zoom-stage-h) !important;
  overflow:visible !important;
}
/* Al alejar, el lienzo puede quedar más angosto que el viewport: centrarlo. */
html.ep-browser-zoom-out body.design-page .ep-stage{margin-left:auto !important;margin-right:auto !important}
/* Al acercar, conservar el origen izquierdo para un scroll predecible. */
html.ep-browser-zoom-in body.design-page .ep-stage{margin-left:0 !important;margin-right:0 !important}

/* Admin: en zoom, el documento completo se desplaza. Las columnas no se
   rearman por media queries ni se recorta el lienzo maestro. */
html.ep-admin-master.ep-admin-zoom-scroll,
html.ep-admin-master.ep-admin-zoom-scroll body.admin-compact{
  width:auto !important;
  height:auto !important;
  min-width:100% !important;
  min-height:100% !important;
  overflow:auto !important;
}
html.ep-admin-master.ep-admin-zoom-scroll body.admin-compact{
  width:var(--admin-stage-w) !important;
  min-width:var(--admin-stage-w) !important;
  height:var(--admin-stage-h) !important;
  min-height:var(--admin-stage-h) !important;
}
html.ep-admin-master.ep-admin-zoom-scroll .admin-stage{
  width:var(--admin-stage-w) !important;
  min-width:var(--admin-stage-w) !important;
  height:var(--admin-stage-h) !important;
  min-height:var(--admin-stage-h) !important;
  overflow:visible !important;
}
html.ep-admin-master.ep-admin-zoom-scroll .admin-canvas{overflow:visible !important}
html.ep-admin-master.ep-admin-zoom-out .admin-stage{margin-left:auto !important;margin-right:auto !important}


/* v0.9.65 — guardado al final, franjas delivery, detalle con scroll */
html.ep-admin-master #panel-settings.active{display:block!important;overflow-y:auto!important;overflow-x:hidden!important;padding-right:7px!important}
html.ep-admin-master #panel-settings .admin-settings-grid{min-height:auto!important;display:grid!important}
html.ep-admin-master #panel-settings>.admin-save-row{position:static!important;width:100%!important;height:auto!important;min-height:54px!important;flex:none!important;margin:18px 0 8px!important;padding:16px 0 6px!important;border-top:1px solid #e2e7ee!important;justify-content:flex-end!important;background:transparent!important}
html.ep-admin-master #panel-settings>.admin-save-row .btn{height:40px!important;padding:0 18px!important}
.delivery-slot-manager{margin-top:16px;border-top:1px solid #e2e7ee;padding-top:14px}.delivery-slots-list{display:flex;flex-direction:column;gap:7px;min-height:48px}.delivery-slot-day{display:grid;grid-template-columns:105px 1fr;gap:9px;align-items:start}.delivery-slot-day-label{font-size:11px;font-weight:900;color:#344054;padding-top:8px}.delivery-slot-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.delivery-slot-chip{border:1px solid #cfd8e5;border-radius:9px;background:#fff;padding:8px 9px;text-align:left;cursor:pointer;color:#213047}.delivery-slot-chip strong{display:block;font-size:12px;color:#073873}.delivery-slot-chip span{display:block;font-size:10px;line-height:1.25;margin-top:2px}.delivery-slot-chip small{display:block;font-size:9px;font-weight:900;margin-top:5px;color:#395d8e}.delivery-slot-chip.available:hover{border-color:#2d6cd3;background:#f5f9ff}.delivery-slot-chip.manual-blocked{border-color:#ef9aa4;background:#fff1f3}.delivery-slot-chip.manual-blocked strong,.delivery-slot-chip.manual-blocked small{color:#a41228}
.admin-detail-modal.show{align-items:center!important;overflow:auto!important;padding:20px 0!important}.admin-detail-card{overflow:auto!important;overscroll-behavior:contain;max-height:calc(100vh - 40px)!important;padding-bottom:34px!important}.admin-detail-close{position:sticky!important;float:right!important;right:0!important;top:0!important;z-index:4!important;background:#fff!important;border-radius:50%!important;width:34px!important;height:34px!important;line-height:30px!important}
@media(max-width:900px){.delivery-slot-day{grid-template-columns:1fr}.delivery-slot-chips{grid-template-columns:1fr}.admin-detail-card{width:calc(100vw - 24px)!important}}


/* =========================================================
   v0.9.65 — entrega flexible + dos franjas + autocomplete completo
   ========================================================= */
html.ep-reference-1440 .multi-payment-page .delivery-small-card{
  height:auto!important;
  min-height:138px!important;
  overflow:visible!important;
}
html.ep-reference-1440 .multi-payment-page .delivery-small-card .detail-row{
  height:auto!important;
  min-height:138px!important;
  align-items:center!important;
  padding-top:16px!important;
  padding-bottom:16px!important;
}
.multi-payment-page .delivery-card-copy{
  min-width:0!important;
  overflow:visible!important;
}
.multi-payment-page .delivery-card-copy .delivery-inline,
.multi-payment-page .delivery-card-copy .pickup-reserve-note,
.multi-payment-page .delivery-card-copy #deliveryNote{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  max-width:100%!important;
}
.multi-payment-page .delivery-card-copy .delivery-time-inline{
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.multi-payment-page .delivery-small-card .change-btn{
  align-self:center!important;
  white-space:nowrap!important;
  flex:0 0 auto!important;
}
html.ep-reference-1440.ep-browser-zoom-in .multi-payment-page .delivery-small-card{
  overflow:visible!important;
}
html.ep-admin-master .shipping-settings-grid label small{
  display:block;
  margin-top:4px;
  color:#667085;
  font-size:10px;
  line-height:1.25;
  font-weight:600;
}


/* =========================================================
   v0.9.65 — EXPERIENCIA RESPONSIVE NATIVA PARA CELULARES
   Escritorio conserva el diseño 1440 aprobado. En <=820 px dejamos de escalar
   el artboard y reacomodamos la interfaz al ancho real del dispositivo.
   ========================================================= */
@media (max-width:820px){
  html.ep-mobile-native,
  html.ep-mobile-native body.design-page{
    width:100%!important;height:auto!important;min-width:0!important;min-height:100%!important;
    overflow-x:hidden!important;overflow-y:auto!important;background:#fff!important;
  }
  html.ep-mobile-native body.design-page{display:block!important}
  html.ep-mobile-native body.account-page,
  html.ep-mobile-native body.terms-page{background:#f6f8fb!important}
  html.ep-mobile-native .ep-stage,
  html.ep-mobile-native .ep-canvas{
    position:relative!important;left:auto!important;top:auto!important;transform:none!important;
    width:100%!important;min-width:0!important;height:auto!important;min-height:100vh!important;
    overflow:visible!important;margin:0!important;background:inherit!important;
  }
  html.ep-mobile-native .page-shell,
  html.ep-mobile-native .header-inner,
  html.ep-mobile-native .home-main,
  html.ep-mobile-native .home-static,
  html.ep-mobile-native .footer-inner{
    width:calc(100% - 28px)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;
  }
  html.ep-mobile-native .flow-main{height:auto!important;min-height:calc(100vh - 118px)!important;padding:18px 0 42px!important;overflow:visible!important}

  /* Header: logo + acción arriba, navegación debajo y desplazable si hace falta. */
  html.ep-mobile-native .site-header{height:auto!important;min-height:112px!important;position:relative!important;box-shadow:0 2px 5px rgba(0,0,0,.10)!important}
  html.ep-mobile-native .header-inner{
    min-height:112px!important;padding:10px 0 8px!important;display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:58px 36px!important;
    gap:4px 10px!important;align-items:center!important;
  }
  html.ep-mobile-native .brand{width:min(205px,54vw)!important;height:54px!important;min-width:0!important}
  html.ep-mobile-native .brand img{width:100%!important;max-height:52px!important;object-fit:contain!important}
  html.ep-mobile-native .header-actions{min-width:0!important;gap:6px!important}
  html.ep-mobile-native .header-primary,
  html.ep-mobile-native .header-account-btn{
    min-width:0!important;width:auto!important;height:42px!important;border-radius:12px!important;
    padding:0 12px!important;font-size:12px!important;gap:6px!important;white-space:nowrap!important;
  }
  html.ep-mobile-native .header-account-icon{width:18px!important;height:18px!important}
  html.ep-mobile-native .nav{
    grid-column:1/3!important;grid-row:2!important;width:100%!important;justify-content:flex-start!important;
    gap:20px!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;padding:4px 2px 6px!important;
    font-size:13px!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;
  }
  html.ep-mobile-native .nav::-webkit-scrollbar{display:none}
  html.ep-mobile-native .nav a{flex:0 0 auto!important}

  /* Modales de acceso */
  html.ep-mobile-native .access-modal{padding:10px!important;align-items:flex-end!important}
  html.ep-mobile-native .access-card{width:100%!important;max-height:92vh!important;border-radius:18px 18px 10px 10px!important;padding:24px 18px 22px!important}
  html.ep-mobile-native .account-card h2{font-size:23px!important}
  html.ep-mobile-native .account-tabs button{font-size:13px!important}

  /* Stepper compacto pero legible. */
  html.ep-mobile-native .stepper{
    width:100%!important;max-width:100%!important;margin:0 auto 26px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
  html.ep-mobile-native .stepper::before,
  html.ep-mobile-native .stepper::after{top:13px!important}
  html.ep-mobile-native .step-bubble{width:28px!important;height:28px!important;font-size:13px!important}
  html.ep-mobile-native .step-label{font-size:10px!important;line-height:1.15!important;margin-top:6px!important;white-space:normal!important;padding:0 3px!important}

  /* HOME */
  html.ep-mobile-native .home-stage{min-height:0!important;height:auto!important;overflow:visible!important;padding:0 0 26px!important}
  html.ep-mobile-native .home-login{
    position:relative!important;right:auto!important;top:auto!important;margin:14px 14px 0 auto!important;
    width:max-content!important;min-width:132px!important;height:40px!important;border-radius:12px!important;padding:0 12px!important;font-size:12px!important;
  }
  html.ep-mobile-native .home-login .login-icon{width:20px!important;height:20px!important}
  html.ep-mobile-native .home-main{height:auto!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important;align-items:start!important}
  html.ep-mobile-native .home-copy{padding:26px 4px 8px!important;text-align:center!important}
  html.ep-mobile-native .eyebrow{height:auto!important;min-height:39px!important;border-radius:12px!important;padding:9px 12px!important;font-size:12px!important;line-height:1.25!important}
  html.ep-mobile-native .home-copy h1{margin:22px 0 18px!important;font-size:34px!important;line-height:1.08!important;letter-spacing:-.7px!important}
  html.ep-mobile-native .home-copy p{font-size:16px!important;line-height:1.45!important;padding:0 5px!important}
  html.ep-mobile-native .home-copy p br{display:none!important}
  html.ep-mobile-native .hero-cta{width:100%!important;max-width:360px!important;height:54px!important;margin-top:22px!important;border-radius:14px!important;font-size:17px!important}
  html.ep-mobile-native .hero-note{margin-top:14px!important;font-size:12px!important}
  html.ep-mobile-native .home-art{height:auto!important;padding:12px 0 20px!important}
  html.ep-mobile-native .home-art img{width:min(94%,480px)!important;max-height:none!important}
  html.ep-mobile-native .benefit-row{height:auto!important;display:grid!important;grid-template-columns:1fr!important;border-radius:14px!important;overflow:hidden!important}
  html.ep-mobile-native .benefit{height:auto!important;min-height:92px!important;justify-content:flex-start!important;padding:14px 18px!important;text-align:left!important}
  html.ep-mobile-native .benefit:not(:last-child)::after{left:18px!important;right:18px!important;top:auto!important;bottom:0!important;width:auto!important;height:1px!important}
  html.ep-mobile-native .round-blue{width:48px!important;height:48px!important}
  html.ep-mobile-native .round-blue svg{width:26px!important;height:26px!important}
  html.ep-mobile-native .benefit strong{font-size:16px!important}
  html.ep-mobile-native .benefit p{font-size:12px!important;line-height:1.35!important}
  html.ep-mobile-native .benefit p br{display:none!important}
  html.ep-mobile-native .home-steps-grid{height:auto!important;margin-top:18px!important;grid-template-columns:1fr!important;gap:10px!important}
  html.ep-mobile-native .how-card{min-height:108px!important;grid-template-columns:70px minmax(0,1fr)!important;padding:14px 16px!important}
  html.ep-mobile-native .how-card strong{font-size:15px!important}
  html.ep-mobile-native .how-card p{font-size:12px!important;line-height:1.35!important}
  html.ep-mobile-native .security-card{min-height:116px!important;padding:16px!important}
  html.ep-mobile-native .security-card strong{font-size:15px!important}
  html.ep-mobile-native .security-card p{font-size:11px!important;line-height:1.4!important}
  html.ep-mobile-native .home-footer{height:auto!important;padding:18px 0!important}
  html.ep-mobile-native .footer-inner{height:auto!important;display:grid!important;grid-template-columns:1fr!important;gap:15px!important;text-align:center!important}
  html.ep-mobile-native .payment-logos{justify-content:center!important;flex-wrap:wrap!important;gap:15px!important}
  html.ep-mobile-native .footer-sep{width:100%!important;height:1px!important}
  html.ep-mobile-native .footer-promises{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;justify-items:center!important}

  /* SUBIR ARCHIVOS */
  html.ep-mobile-native .upload-intro{margin-bottom:18px!important}
  html.ep-mobile-native .upload-intro h1{font-size:36px!important;line-height:1.05!important;letter-spacing:-1px!important;margin-bottom:10px!important}
  html.ep-mobile-native .upload-intro p{font-size:15px!important;line-height:1.35!important;margin:0!important;padding:0 8px!important}
  html.ep-mobile-native .build-proof{font-size:9px!important;line-height:1.3!important;white-space:normal!important}
  html.ep-mobile-native .multi-upload-page .dropzone,
  html.ep-mobile-native .dropzone{width:100%!important;height:auto!important;min-height:310px!important;border-radius:18px!important;padding:26px 16px!important}
  html.ep-mobile-native .upload-cloud{width:52px!important;height:52px!important}
  html.ep-mobile-native .dropzone h2{font-size:20px!important;text-align:center!important}
  html.ep-mobile-native .multi-file-hint{font-size:12px!important;line-height:1.4!important;padding:0 6px!important}
  html.ep-mobile-native .dropzone .or{font-size:14px!important;margin:7px 0!important}
  html.ep-mobile-native .upload-btn{width:100%!important;max-width:290px!important;height:48px!important;font-size:15px!important;padding:0 18px!important}
  html.ep-mobile-native .format-row{justify-content:center!important;flex-wrap:wrap!important;gap:8px 12px!important;margin-top:20px!important;font-size:12px!important}
  html.ep-mobile-native .format-item{display:inline-flex!important;align-items:center!important;gap:4px!important}
  html.ep-mobile-native .dropzone small{font-size:10px!important;text-align:center!important;line-height:1.35!important}
  html.ep-mobile-native .non-pdf-note{font-size:10px!important;line-height:1.35!important;text-align:center!important}
  html.ep-mobile-native .uploaded-documents{width:100%!important;margin-top:16px!important;padding:14px!important}
  html.ep-mobile-native .uploaded-documents-head{align-items:stretch!important;flex-direction:column!important;gap:10px!important}
  html.ep-mobile-native .uploaded-documents-head .btn{width:100%!important;height:40px!important}
  html.ep-mobile-native .multi-upload-page .upload-list-item{grid-template-columns:40px minmax(0,1fr) 30px!important;gap:8px!important;padding:9px!important}
  html.ep-mobile-native .multi-upload-page .upload-list-ready{grid-column:2/3!important;font-size:10px!important;white-space:normal!important}
  html.ep-mobile-native .upload-remove{width:30px!important;padding:0!important}
  html.ep-mobile-native .multi-upload-page .upload-preview-simple,
  html.ep-mobile-native .multi-upload-page .upload-privacy-simple{width:100%!important;font-size:11px!important;line-height:1.45!important}
  html.ep-mobile-native .multi-upload-page .upload-continue-centered .flow-continue{width:100%!important;max-width:330px!important;height:50px!important;font-size:15px!important}

  /* CONFIGURAR */
  html.ep-mobile-native .document-switcher{width:100%!important;margin:0 auto 16px!important;padding:13px!important}
  html.ep-mobile-native .document-switcher-head{align-items:stretch!important;flex-direction:column!important;gap:10px!important}
  html.ep-mobile-native .document-switcher-head strong{font-size:16px!important}
  html.ep-mobile-native .document-switcher-head span{font-size:11px!important;line-height:1.35!important}
  html.ep-mobile-native .document-switcher-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  html.ep-mobile-native .document-switcher-actions .btn{width:100%!important;height:38px!important;padding:0 8px!important;font-size:10px!important}
  html.ep-mobile-native .document-tabs{gap:7px!important}
  html.ep-mobile-native .document-tab{min-width:235px!important;max-width:250px!important;height:64px!important}
  html.ep-mobile-native .detected-bar{width:100%!important;min-height:0!important;height:auto!important;margin:0 auto 16px!important;padding:12px!important;grid-template-columns:44px minmax(0,1fr)!important;gap:10px!important}
  html.ep-mobile-native .robot-box{width:44px!important;height:44px!important}
  html.ep-mobile-native .robot-box svg{width:28px!important;height:28px!important}
  html.ep-mobile-native .detected-title{font-size:12px!important;margin-bottom:5px!important}
  html.ep-mobile-native .detected-items{gap:5px 12px!important;font-size:11px!important;line-height:1.3!important}
  html.ep-mobile-native .detected-items span:before{font-size:14px!important;margin-right:5px!important}
  html.ep-mobile-native .eco-note{grid-column:1/3!important;border-left:0!important;border-top:1px solid #d5d9df!important;padding:9px 0 0!important;min-height:0!important;font-size:11px!important;line-height:1.4!important}
  html.ep-mobile-native .config-columns{width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  html.ep-mobile-native .preview-card,
  html.ep-mobile-native .multi-config-page .preview-card{width:100%!important;height:auto!important;min-height:0!important;padding:14px!important}
  html.ep-mobile-native .preview-frame,
  html.ep-mobile-native .multi-config-page .preview-frame{height:min(112vw,430px)!important;min-height:300px!important;margin-top:4px!important;padding:12px!important}
  html.ep-mobile-native .preview-controls{height:50px!important;gap:14px!important}
  html.ep-mobile-native .preview-controls strong{font-size:11px!important;min-width:105px!important}
  html.ep-mobile-native .small-control{width:38px!important;height:36px!important}
  html.ep-mobile-native .configured-preview-note{font-size:10px!important;grid-template-columns:8px minmax(0,1fr)!important}
  html.ep-mobile-native .configured-preview-note>b{grid-column:2!important;justify-self:start!important;margin-top:2px!important}
  html.ep-mobile-native .options-grid{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  html.ep-mobile-native .option-card,
  html.ep-mobile-native .option-card.tall,
  html.ep-mobile-native .option-card.wide{width:100%!important;height:auto!important;min-height:104px!important;grid-column:auto!important;padding:12px 14px!important;overflow:visible!important}
  html.ep-mobile-native .option-card h3{height:auto!important;min-height:28px!important;font-size:16px!important;margin-bottom:9px!important}
  html.ep-mobile-native .seg-btn{height:38px!important;font-size:12px!important;padding:0 7px!important}
  html.ep-mobile-native .seg.three{grid-template-columns:1fr!important;gap:6px!important}
  html.ep-mobile-native .option-card:has(.seg.three){min-height:178px!important}
  html.ep-mobile-native .config-summary,
  html.ep-mobile-native .multi-config-page .config-summary{width:100%!important;height:auto!important;min-height:0!important;padding:18px 16px!important}
  html.ep-mobile-native .summary-documents{max-height:none!important}
  html.ep-mobile-native .summary-total{margin-top:22px!important}
  html.ep-mobile-native .multi-config-page .config-actions{height:auto!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding-top:4px!important}
  html.ep-mobile-native .config-actions .flow-back,
  html.ep-mobile-native .config-actions .flow-continue{width:100%!important;height:48px!important;font-size:14px!important}

  /* PAGO */
  html.ep-mobile-native .payment-page .stepper{margin-bottom:22px!important}
  html.ep-mobile-native .payment-title-wrap{margin:0 0 16px!important;gap:10px!important;align-items:flex-start!important}
  html.ep-mobile-native .title-icon{width:46px!important;height:46px!important;flex:0 0 auto!important}
  html.ep-mobile-native .title-icon svg{width:28px!important;height:28px!important}
  html.ep-mobile-native .payment-title-wrap h1{font-size:27px!important;line-height:1.1!important;margin-bottom:4px!important}
  html.ep-mobile-native .payment-title-wrap p{font-size:12px!important;line-height:1.35!important}
  html.ep-mobile-native .payment-grid,
  html.ep-mobile-native .multi-payment-page .payment-grid{width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  html.ep-mobile-native .detail-card,
  html.ep-mobile-native .file-card,
  html.ep-mobile-native .config-card,
  html.ep-mobile-native .price-card,
  html.ep-mobile-native .delivery-small-card,
  html.ep-mobile-native .multi-files-review-card,
  html.ep-mobile-native .aggregate-price-card{width:100%!important;height:auto!important;min-height:0!important;overflow:visible!important}
  html.ep-mobile-native .detail-row,
  html.ep-mobile-native .multi-review-row{height:auto!important;min-height:96px!important;grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important;padding:14px!important;align-items:start!important}
  html.ep-mobile-native .detail-icon{width:46px!important;height:46px!important}
  html.ep-mobile-native .detail-icon svg{width:28px!important;height:28px!important}
  html.ep-mobile-native .detail-row h3{font-size:16px!important;margin-bottom:6px!important}
  html.ep-mobile-native .detail-row p{font-size:13px!important;line-height:1.4!important}
  html.ep-mobile-native .detail-row>.btn,
  html.ep-mobile-native .detail-row>.change-btn,
  html.ep-mobile-native .detail-row>.view-file{grid-column:1/3!important;width:100%!important;margin-top:5px!important}
  html.ep-mobile-native .payment-documents{gap:7px!important}
  html.ep-mobile-native .payment-document-row{grid-template-columns:28px minmax(0,1fr)!important;gap:8px!important;padding:9px!important}
  html.ep-mobile-native .payment-document-side{grid-column:2!important;align-items:flex-start!important;text-align:left!important;flex-direction:row!important;flex-wrap:wrap!important;gap:4px 10px!important}
  html.ep-mobile-native .payment-document-name strong{font-size:12px!important}
  html.ep-mobile-native .payment-document-pills .config-pill{font-size:9px!important}
  html.ep-mobile-native .multi-review-heading{align-items:stretch!important;flex-direction:column!important}
  html.ep-mobile-native .payment-edit-files{width:100%!important}
  html.ep-mobile-native .price-lines{max-width:none!important}
  html.ep-mobile-native .price-line{font-size:14px!important;gap:10px!important}
  html.ep-mobile-native .price-big{font-size:20px!important}
  html.ep-mobile-native .price-big strong{font-size:22px!important}
  html.ep-mobile-native .pay-card,
  html.ep-mobile-native .multi-payment-page .pay-card,
  html.ep-mobile-native .multi-payment-page.transfer-mode .pay-card{width:100%!important;height:auto!important;min-height:0!important;padding:16px 14px 18px!important}
  html.ep-mobile-native .pay-card h2{font-size:18px!important}
  html.ep-mobile-native .pay-choice{height:auto!important;min-height:72px!important;padding:10px!important}
  html.ep-mobile-native .pay-choice strong{font-size:15px!important}
  html.ep-mobile-native .contact-title-row{flex-direction:column!important;gap:7px!important}
  html.ep-mobile-native .account-inline-btn{width:100%!important;height:36px!important}
  html.ep-mobile-native .contact-fields,
  html.ep-mobile-native .contact-fields-three{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  html.ep-mobile-native .contact-box{height:auto!important;min-height:0!important;padding:12px!important}
  html.ep-mobile-native .contact-field input{height:42px!important;font-size:14px!important}
  html.ep-mobile-native .safe-panel{height:auto!important;min-height:112px!important;grid-template-columns:62px minmax(0,1fr)!important;padding:12px!important}
  html.ep-mobile-native .safe-icon{width:54px!important;height:54px!important}
  html.ep-mobile-native .safe-panel strong{font-size:16px!important}
  html.ep-mobile-native .safe-panel p{font-size:11px!important;line-height:1.4!important}
  html.ep-mobile-native .terms{font-size:12px!important;align-items:flex-start!important}
  html.ep-mobile-native .terms input{width:24px!important;height:24px!important;margin-top:1px!important}
  html.ep-mobile-native .pay-now{height:52px!important;font-size:17px!important}

  /* Modal de entrega y factura: bottom-sheet cómodo para pulgar. */
  html.ep-mobile-native .delivery-modal,
  html.ep-mobile-native .invoice-modal{padding:0!important;align-items:flex-end!important}
  html.ep-mobile-native .delivery-modal-card,
  html.ep-mobile-native .invoice-modal-card{width:100%!important;max-width:none!important;max-height:92vh!important;border-radius:18px 18px 0 0!important;padding:22px 16px 20px!important;overflow:auto!important}
  html.ep-mobile-native .delivery-modal-heading{align-items:flex-start!important;gap:10px!important}
  html.ep-mobile-native .delivery-modal-heading>span{width:44px!important;height:44px!important}
  html.ep-mobile-native .delivery-modal-heading h2{font-size:21px!important}
  html.ep-mobile-native .delivery-modal-heading p{font-size:12px!important;line-height:1.35!important}
  html.ep-mobile-native .delivery-mode-buttons,
  html.ep-mobile-native .shipping-address-fields,
  html.ep-mobile-native .shipping-address-fields-autocomplete,
  html.ep-mobile-native .shipping-calc-row,
  html.ep-mobile-native .invoice-fields{grid-template-columns:1fr!important}
  html.ep-mobile-native .invoice-wide{grid-column:auto!important}
  html.ep-mobile-native .invoice-modal-actions{display:grid!important;grid-template-columns:1fr!important}
  html.ep-mobile-native .invoice-modal-actions .btn{width:100%!important}
  html.ep-mobile-native .address-suggestions{max-height:250px!important}

  /* CONFIRMACIÓN */
  html.ep-mobile-native .confirm-center h1{font-size:29px!important;line-height:1.1!important}
  html.ep-mobile-native .confirm-center p{font-size:13px!important;line-height:1.35!important;padding:0 8px!important}
  html.ep-mobile-native .confirm-check{width:58px!important;height:58px!important}
  html.ep-mobile-native .confirm-check svg{width:38px!important;height:38px!important}
  html.ep-mobile-native .email-confirmation-chip{width:100%!important;text-align:left!important}
  html.ep-mobile-native .order-number{width:100%!important;height:auto!important;min-height:82px!important;margin:18px auto 14px!important;padding:14px!important;gap:10px!important;align-items:flex-start!important;flex-direction:column!important}
  html.ep-mobile-native .order-number strong{font-size:24px!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native .copy-code{width:100%!important;justify-content:center!important}
  html.ep-mobile-native .confirm-grid,
  html.ep-mobile-native .multi-confirm-page .confirm-grid{width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  html.ep-mobile-native .confirm-order-card,
  html.ep-mobile-native .multi-confirm-page .confirm-order-card,
  html.ep-mobile-native .delivery-card{width:100%!important;height:auto!important;min-height:0!important;padding:16px!important}
  html.ep-mobile-native .multi-confirm-page .confirm-file{flex-direction:column!important;gap:10px!important}
  html.ep-mobile-native .confirm-file h2,
  html.ep-mobile-native .delivery-card h2{font-size:21px!important;margin-bottom:12px!important}
  html.ep-mobile-native .paid-total{width:100%!important;min-width:0!important;justify-content:space-between!important}
  html.ep-mobile-native .confirm-document-head{grid-template-columns:28px minmax(0,1fr)!important}
  html.ep-mobile-native .confirm-document-head a{grid-column:2!important}
  html.ep-mobile-native .confirm-document-specs{grid-template-columns:1fr 1fr!important;margin-left:0!important;gap:6px!important}
  html.ep-mobile-native .delivery-item{grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important}
  html.ep-mobile-native .delivery-item strong{font-size:16px!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native .confirmation-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin:16px 0!important}
  html.ep-mobile-native .confirmation-actions .flow-action{width:100%!important;height:48px!important}
  html.ep-mobile-native .repeat-bar{display:grid!important;grid-template-columns:60px minmax(0,1fr)!important;gap:10px!important;padding:14px!important}
  html.ep-mobile-native .repeat-icon{width:56px!important;height:56px!important}
  html.ep-mobile-native .repeat-bar strong{font-size:15px!important}
  html.ep-mobile-native .repeat-bar span{font-size:11px!important}
  html.ep-mobile-native .repeat-btn{grid-column:1/3!important;width:100%!important;height:46px!important}

  /* SEGUIMIENTO */
  html.ep-mobile-native .tracking-wrap{width:100%!important;margin:0 auto!important}
  html.ep-mobile-native .tracking-title-row{align-items:flex-start!important;gap:11px!important;margin:4px 0 18px!important}
  html.ep-mobile-native .tracking-title-icon{width:48px!important;height:48px!important}
  html.ep-mobile-native .tracking-title-icon svg{width:29px!important;height:29px!important}
  html.ep-mobile-native .tracking-title-row h1{font-size:28px!important;line-height:1.08!important}
  html.ep-mobile-native .tracking-title-row p{font-size:12px!important;line-height:1.35!important}
  html.ep-mobile-native .tracking-search-card{padding:14px!important}
  html.ep-mobile-native .tracking-search-card label{font-size:13px!important}
  html.ep-mobile-native .tracking-search{grid-template-columns:1fr!important;gap:8px!important}
  html.ep-mobile-native .tracking-search input,
  html.ep-mobile-native .tracking-search .btn{height:46px!important;font-size:14px!important}
  html.ep-mobile-native .tracking-order-card{padding:16px 14px!important}
  html.ep-mobile-native .tracking-order-head{align-items:flex-start!important;flex-direction:column!important;gap:10px!important}
  html.ep-mobile-native .tracking-order-head h2{font-size:24px!important}
  html.ep-mobile-native .tracking-status-badge{min-width:0!important;height:34px!important;font-size:11px!important;padding:0 12px!important}
  html.ep-mobile-native .tracking-current-state{padding:12px!important;gap:10px!important}
  html.ep-mobile-native .tracking-current-icon{width:44px!important;height:44px!important}
  html.ep-mobile-native .tracking-current-state strong{font-size:16px!important}
  html.ep-mobile-native .tracking-current-state small{font-size:11px!important}
  html.ep-mobile-native .tracking-timeline{margin:24px 0 20px!important}
  html.ep-mobile-native .tracking-timeline::before,
  html.ep-mobile-native .tracking-timeline::after{top:16px!important}
  html.ep-mobile-native .tracking-dot{width:34px!important;height:34px!important;font-size:13px!important;margin-bottom:7px!important}
  html.ep-mobile-native .tracking-timeline-step strong{font-size:10px!important;line-height:1.2!important;padding:0 2px!important}
  html.ep-mobile-native .tracking-info-grid{grid-template-columns:1fr!important;gap:8px!important}
  html.ep-mobile-native .tracking-info-item{min-height:88px!important;padding:12px!important;grid-template-columns:40px minmax(0,1fr)!important;gap:10px!important}
  html.ep-mobile-native .tracking-info-icon{width:40px!important;height:40px!important}
  html.ep-mobile-native .tracking-info-item strong,
  html.ep-mobile-native .tracking-info-item span:not(.tracking-info-icon){white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native .tracking-info-item strong{font-size:14px!important}
  html.ep-mobile-native .tracking-info-item span:not(.tracking-info-icon){font-size:11px!important;line-height:1.35!important}

  /* MI CUENTA */
  html.ep-mobile-native .account-main,
  html.ep-mobile-native .terms-main{min-height:0!important;padding:22px 0 50px!important}
  html.ep-mobile-native .account-page-wrap,
  html.ep-mobile-native .terms-wrap{width:calc(100% - 24px)!important;margin:0 auto!important}
  html.ep-mobile-native .account-page-heading{gap:14px!important;margin-bottom:16px!important}
  html.ep-mobile-native .account-page-heading h1{font-size:31px!important;letter-spacing:-.4px!important}
  html.ep-mobile-native .account-page-heading p{font-size:13px!important;line-height:1.4!important}
  html.ep-mobile-native .account-logout-top{width:100%!important;margin-top:0!important}
  html.ep-mobile-native .account-profile-card,
  html.ep-mobile-native .account-history-card{padding:16px!important}
  html.ep-mobile-native .account-section-head{flex-direction:column!important;gap:8px!important}
  html.ep-mobile-native .account-section-head h2{font-size:20px!important}
  html.ep-mobile-native .account-profile-grid{grid-template-columns:1fr!important;gap:10px!important}
  html.ep-mobile-native .account-profile-actions{align-items:stretch!important;flex-direction:column!important;gap:7px!important}
  html.ep-mobile-native .account-profile-actions .btn{width:100%!important}
  html.ep-mobile-native .account-order-card-full{padding:13px!important}
  html.ep-mobile-native .account-order-top{grid-template-columns:1fr!important;gap:8px!important}
  html.ep-mobile-native .account-order-total{text-align:left!important}
  html.ep-mobile-native .account-order-times,
  html.ep-mobile-native .account-order-info{grid-template-columns:1fr 1fr!important;gap:6px!important}
  html.ep-mobile-native .account-order-info>div:first-child{grid-column:1/3!important}
  html.ep-mobile-native .account-order-file{grid-template-columns:25px minmax(0,1fr)!important}
  html.ep-mobile-native .account-order-file b{grid-column:2!important;text-align:left!important}
  html.ep-mobile-native .account-order-bottom{align-items:stretch!important;flex-direction:column!important}
  html.ep-mobile-native .account-order-bottom .btn{width:100%!important;height:40px!important}

  /* PÁGINAS INFORMATIVAS + TÉRMINOS */
  html.ep-mobile-native .info-main{min-height:0!important}
  html.ep-mobile-native .info-hero{align-items:flex-start!important;gap:11px!important;margin-bottom:18px!important;padding:0!important}
  html.ep-mobile-native .info-hero-icon{width:50px!important;height:50px!important}
  html.ep-mobile-native .info-hero-icon svg{width:30px!important;height:30px!important}
  html.ep-mobile-native .info-hero h1{font-size:29px!important;line-height:1.1!important}
  html.ep-mobile-native .info-hero p{font-size:12px!important;line-height:1.4!important}
  html.ep-mobile-native .process-grid{grid-template-columns:1fr!important;gap:10px!important}
  html.ep-mobile-native .process-card,
  html.ep-mobile-native .process-card:last-child{grid-column:auto!important;min-height:118px!important;grid-template-columns:34px 44px minmax(0,1fr)!important;gap:9px!important;padding:13px!important}
  html.ep-mobile-native .process-number{width:30px!important;height:30px!important;font-size:13px!important}
  html.ep-mobile-native .process-icon{width:42px!important;height:42px!important}
  html.ep-mobile-native .process-card h2{font-size:17px!important}
  html.ep-mobile-native .process-card p{font-size:12px!important;line-height:1.4!important}
  html.ep-mobile-native .info-bottom-callout{height:auto!important;min-height:118px!important;align-items:stretch!important;flex-direction:column!important;gap:12px!important;padding:16px!important}
  html.ep-mobile-native .info-bottom-callout strong{font-size:17px!important}
  html.ep-mobile-native .info-bottom-callout span{font-size:12px!important}
  html.ep-mobile-native .info-bottom-callout .btn{width:100%!important;height:46px!important}
  html.ep-mobile-native .public-price-card{padding:16px!important}
  html.ep-mobile-native .public-price-head{align-items:flex-start!important;flex-direction:column!important}
  html.ep-mobile-native .public-price-head h2{font-size:22px!important}
  html.ep-mobile-native .public-price-list{grid-template-columns:1fr!important;column-gap:0!important}
  html.ep-mobile-native .public-price-row{min-height:62px!important}
  html.ep-mobile-native .price-explanation{height:auto!important;grid-template-columns:1fr!important;padding:8px 0!important}
  html.ep-mobile-native .price-explanation span{min-height:40px!important;justify-content:flex-start!important;padding:0 12px!important;font-size:12px!important}
  html.ep-mobile-native .contact-public-card{min-height:0!important;grid-template-columns:52px minmax(0,1fr)!important;gap:12px!important;padding:18px 15px!important}
  html.ep-mobile-native .contact-mail-icon{width:50px!important;height:50px!important;font-size:27px!important}
  html.ep-mobile-native .contact-public-card small{font-size:10px!important}
  html.ep-mobile-native .contact-public-card h2{font-size:19px!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native .contact-public-card p{font-size:12px!important;line-height:1.4!important}
  html.ep-mobile-native .contact-public-card .btn{grid-column:1/3!important;width:100%!important;height:44px!important}
  html.ep-mobile-native .contact-track-card{height:auto!important;min-height:110px!important;align-items:stretch!important;flex-direction:column!important;gap:10px!important;padding:15px!important}
  html.ep-mobile-native .contact-track-card .btn{width:100%!important}
  html.ep-mobile-native .terms-wrap{padding:20px 16px 26px!important;border-radius:12px!important}
  html.ep-mobile-native .terms-heading h1{font-size:28px!important;line-height:1.1!important}
  html.ep-mobile-native .terms-wrap h2{font-size:17px!important}
  html.ep-mobile-native .terms-wrap p{font-size:12px!important;line-height:1.6!important}

  /* Toast siempre dentro del teléfono. */
  html.ep-mobile-native .toast{left:12px!important;right:12px!important;bottom:12px!important;max-width:none!important;text-align:center!important;font-size:12px!important}
}

/* =========================================================
   v0.9.65 — ADMINISTRADOR UTILIZABLE DESDE CELULAR
   En <=900 px no se usa el lienzo compacto fijo. Scroll de página normal y
   tarjetas apiladas; escritorio mantiene el panel compacto actual.
   ========================================================= */
@media (max-width:900px){
  html.ep-admin-mobile-native,
  html.ep-admin-mobile-native body.admin-compact{
    width:100%!important;height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;background:#f4f7fb!important;
  }
  html.ep-admin-mobile-native .admin-stage,
  html.ep-admin-mobile-native .admin-canvas{position:relative!important;left:auto!important;top:auto!important;transform:none!important;width:100%!important;height:auto!important;min-height:100vh!important;overflow:visible!important}
  html.ep-admin-mobile-native .admin-logo-header{height:70px!important}
  html.ep-admin-mobile-native .admin-logo-wrap{width:calc(100% - 24px)!important}
  html.ep-admin-mobile-native .admin-logo-link{width:min(250px,70vw)!important;height:54px!important}
  html.ep-admin-mobile-native .admin-shell{width:calc(100% - 24px)!important;height:auto!important;min-height:calc(100vh - 70px)!important;padding:14px 0 40px!important;overflow:visible!important;display:block!important}
  html.ep-admin-mobile-native .admin-title-row{align-items:stretch!important;flex-direction:column!important;gap:11px!important;margin-bottom:12px!important}
  html.ep-admin-mobile-native .admin-title-row h1{font-size:27px!important}
  html.ep-admin-mobile-native .admin-title-row p{font-size:12px!important;line-height:1.35!important}
  html.ep-admin-mobile-native .admin-top-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;width:100%!important}
  html.ep-admin-mobile-native .admin-top-actions .btn{width:100%!important;min-width:0!important;height:40px!important;padding:0 8px!important;font-size:11px!important}
  html.ep-admin-mobile-native .admin-top-actions .admin-alert-toggle{grid-column:1/3!important}
  html.ep-admin-mobile-native .admin-tabs{height:auto!important;min-height:44px!important;display:flex!important;gap:5px!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;margin:0 0 12px!important;padding-bottom:2px!important;scrollbar-width:none!important}
  html.ep-admin-mobile-native .admin-tabs::-webkit-scrollbar{display:none}
  html.ep-admin-mobile-native .admin-tab{height:42px!important;flex:0 0 auto!important;padding:0 12px!important;font-size:11px!important;white-space:nowrap!important}
  html.ep-admin-mobile-native .admin-panel,
  html.ep-admin-mobile-native .admin-panel.active{display:none!important;height:auto!important;min-height:0!important;overflow:visible!important}
  html.ep-admin-mobile-native .admin-panel.active{display:block!important}
  html.ep-admin-mobile-native .admin-kpis-v2{grid-template-columns:1fr 1fr!important;gap:7px!important;margin-bottom:9px!important}
  html.ep-admin-mobile-native .admin-kpis-v2 article{height:68px!important;padding:10px 12px!important}
  html.ep-admin-mobile-native .admin-kpis-v2 span{font-size:10px!important}
  html.ep-admin-mobile-native .admin-kpis-v2 strong{font-size:23px!important}
  html.ep-admin-mobile-native .admin-toolbar{align-items:stretch!important;flex-direction:column!important;gap:8px!important;padding:9px!important}
  html.ep-admin-mobile-native .admin-search-wrap{min-width:0!important;width:100%!important;height:40px!important}
  html.ep-admin-mobile-native .admin-filters{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:2px!important}
  html.ep-admin-mobile-native .filter-chip{height:34px!important;flex:0 0 auto!important;padding:0 11px!important;font-size:10px!important}
  html.ep-admin-mobile-native .admin-order-list{gap:9px!important}
  html.ep-admin-mobile-native .admin-order-main{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;min-height:0!important;padding:13px!important}
  html.ep-admin-mobile-native .order-primary .order-code{font-size:18px!important}
  html.ep-admin-mobile-native .order-customer{font-size:13px!important}
  html.ep-admin-mobile-native .order-file{font-size:11px!important;white-space:normal!important;overflow-wrap:anywhere!important}
  html.ep-admin-mobile-native .order-payment{gap:4px!important}
  html.ep-admin-mobile-native .order-payment strong{font-size:19px!important}
  html.ep-admin-mobile-native .admin-order-main>.btn,
  html.ep-admin-mobile-native .admin-order-main button{width:100%!important;max-width:none!important}
  html.ep-admin-mobile-native .admin-list-footer{align-items:center!important;flex-direction:column!important;gap:10px!important}
  html.ep-admin-mobile-native .admin-settings-grid,
  html.ep-admin-mobile-native .admin-payments-grid,
  html.ep-admin-mobile-native .notification-free-grid{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;height:auto!important;min-height:0!important;gap:10px!important}
  html.ep-admin-mobile-native .admin-setting-card,
  html.ep-admin-mobile-native .admin-notification-card{padding:15px!important;max-width:none!important;height:auto!important;min-height:0!important;overflow:visible!important}
  html.ep-admin-mobile-native .setting-heading{align-items:flex-start!important;gap:10px!important;margin-bottom:14px!important}
  html.ep-admin-mobile-native .setting-icon{width:42px!important;height:42px!important;flex:0 0 auto!important}
  html.ep-admin-mobile-native .setting-heading h2,
  html.ep-admin-mobile-native .notification-copy h2{font-size:19px!important}
  html.ep-admin-mobile-native .setting-heading p,
  html.ep-admin-mobile-native .notification-copy p{font-size:11px!important;line-height:1.35!important}
  html.ep-admin-mobile-native .settings-form-grid,
  html.ep-admin-mobile-native .production-grid,
  html.ep-admin-mobile-native .shipping-settings-grid{grid-template-columns:1fr!important;gap:9px!important}
  html.ep-admin-mobile-native .wide-setting{grid-column:auto!important}
  html.ep-admin-mobile-native .settings-form-grid label{font-size:11px!important}
  html.ep-admin-mobile-native .settings-form-grid input,
  html.ep-admin-mobile-native .settings-form-grid select{height:40px!important;font-size:13px!important}
  html.ep-admin-mobile-native .pickup-slot-definition-row{grid-template-columns:24px 1fr!important;gap:7px!important;align-items:end!important}
  html.ep-admin-mobile-native .pickup-slot-arrow{display:none!important}
  html.ep-admin-mobile-native .pickup-slot-definition-row label{grid-column:2!important}
  html.ep-admin-mobile-native .pickup-slot-remove{grid-column:1/3!important;width:100%!important}
  html.ep-admin-mobile-native .pickup-slot-manager-head{align-items:stretch!important;flex-direction:column!important;gap:9px!important}
  html.ep-admin-mobile-native .pickup-slot-manager-head .btn{width:100%!important}
  html.ep-admin-mobile-native .pickup-slot-day,
  html.ep-admin-mobile-native .delivery-slot-day{grid-template-columns:1fr!important}
  html.ep-admin-mobile-native .pickup-slot-chips,
  html.ep-admin-mobile-native .delivery-slot-chips{grid-template-columns:1fr 1fr!important}
  html.ep-admin-mobile-native #panel-settings>.admin-save-row,
  html.ep-admin-mobile-native .shipping-save-row,
  html.ep-admin-mobile-native .admin-save-row{position:static!important;width:100%!important;display:flex!important;align-items:stretch!important;flex-direction:column!important;gap:7px!important;margin:14px 0 0!important;padding:12px 0 0!important}
  html.ep-admin-mobile-native .admin-save-row .btn{width:100%!important;height:44px!important}
  html.ep-admin-mobile-native .delivery-demand-control{align-items:stretch!important;flex-direction:column!important}
  html.ep-admin-mobile-native .delivery-demand-control .btn{width:100%!important}
  html.ep-admin-mobile-native .shipping-window-admin-note{flex-direction:column!important;font-size:10px!important}
  html.ep-admin-mobile-native .admin-payment-kpis{grid-template-columns:1fr 1fr!important;gap:7px!important}
  html.ep-admin-mobile-native .admin-payment-kpis article{height:auto!important;min-height:72px!important;padding:10px!important}
  html.ep-admin-mobile-native .admin-payment-kpis strong{font-size:18px!important}
  html.ep-admin-mobile-native #panel-notifications .browser-alert-card{display:none!important}
  html.ep-admin-mobile-native #panel-notifications .whatsapp-manual-card,
  html.ep-admin-mobile-native #panel-notifications .email-admin-card{grid-column:auto!important;grid-row:auto!important}
  html.ep-admin-mobile-native #panel-notifications .email-admin-card .settings-form-grid{grid-template-columns:1fr!important}
  html.ep-admin-mobile-native #panel-notifications .email-admin-card .wide-setting{grid-column:auto!important}
  html.ep-admin-mobile-native .notification-actions{align-items:stretch!important;flex-direction:column!important;gap:7px!important}
  html.ep-admin-mobile-native .notification-actions .btn{width:100%!important}
  html.ep-admin-mobile-native .admin-alert-settings{grid-template-columns:1fr!important}
  html.ep-admin-mobile-native .admin-detail-modal.show{padding:8px!important;align-items:flex-start!important}
  html.ep-admin-mobile-native .admin-detail-card{width:100%!important;max-width:none!important;max-height:calc(100vh - 16px)!important;padding:14px!important}
  html.ep-admin-mobile-native .order-detail-grid{grid-template-columns:1fr!important}
  html.ep-admin-mobile-native .order-state-actions{display:grid!important;grid-template-columns:1fr!important}
  html.ep-admin-mobile-native .order-state-actions button,
  html.ep-admin-mobile-native .order-state-actions a{width:100%!important;justify-content:center!important}
  html.ep-admin-mobile-native .admin-new-order-alert{left:10px!important;right:10px!important;top:10px!important;width:auto!important}
}

@media (max-width:420px){
  html.ep-mobile-native .brand{width:min(180px,50vw)!important}
  html.ep-mobile-native .header-primary,
  html.ep-mobile-native .header-account-btn{padding:0 9px!important;font-size:11px!important}
  html.ep-mobile-native .home-copy h1{font-size:31px!important}
  html.ep-mobile-native .confirm-document-specs{grid-template-columns:1fr!important}
  html.ep-mobile-native .account-order-times,
  html.ep-mobile-native .account-order-info{grid-template-columns:1fr!important}
  html.ep-mobile-native .account-order-info>div:first-child{grid-column:auto!important}
  html.ep-admin-mobile-native .pickup-slot-chips,
  html.ep-admin-mobile-native .delivery-slot-chips{grid-template-columns:1fr!important}
}


/* =========================================================
   v0.9.67 — CONFIGURACIÓN MÓVIL SIN RECORTES
   Refuerzo específico para teléfonos angostos: ninguna tarjeta, control,
   resumen ni texto puede imponer un ancho mayor que el viewport.
   ========================================================= */
@media (max-width:820px){
  html.ep-mobile-native body.config-page .page-shell{
    width:calc(100% - 16px)!important;max-width:100%!important;min-width:0!important;
  }
  html.ep-mobile-native body.config-page .document-switcher,
  html.ep-mobile-native body.config-page .detected-bar,
  html.ep-mobile-native body.config-page .config-columns,
  html.ep-mobile-native body.config-page .preview-card,
  html.ep-mobile-native body.config-page .config-center,
  html.ep-mobile-native body.config-page .options-grid,
  html.ep-mobile-native body.config-page .option-card,
  html.ep-mobile-native body.config-page .config-summary,
  html.ep-mobile-native body.config-page .config-actions{
    width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;
  }
  html.ep-mobile-native body.config-page .config-columns>* ,
  html.ep-mobile-native body.config-page .options-grid>* ,
  html.ep-mobile-native body.config-page .seg,
  html.ep-mobile-native body.config-page .copies-box,
  html.ep-mobile-native body.config-page .summary-documents,
  html.ep-mobile-native body.config-page .summary-document,
  html.ep-mobile-native body.config-page .active-price-detail,
  html.ep-mobile-native body.config-page .price-breakdown-row,
  html.ep-mobile-native body.config-page .summary-row,
  html.ep-mobile-native body.config-page .summary-total,
  html.ep-mobile-native body.config-page .no-hidden{
    min-width:0!important;max-width:100%!important;
  }
  html.ep-mobile-native body.config-page .preview-frame{
    width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;
    aspect-ratio:210/297!important;padding:10px!important;
  }
  html.ep-mobile-native body.config-page .preview-frame img{
    width:auto!important;max-width:100%!important;max-height:100%!important;height:auto!important;
  }
  html.ep-mobile-native body.config-page .file-head,
  html.ep-mobile-native body.config-page .file-head>div{min-width:0!important;max-width:100%!important}
  html.ep-mobile-native body.config-page .file-head strong{font-size:15px!important;max-width:100%!important}
  html.ep-mobile-native body.config-page .file-head small{font-size:11px!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native body.config-page .seg{width:100%!important;max-width:100%!important;gap:6px!important}
  html.ep-mobile-native body.config-page .seg-btn{
    width:100%!important;max-width:100%!important;min-width:0!important;padding:0 6px!important;font-size:11px!important;
  }
  html.ep-mobile-native body.config-page .copies-box{width:100%!important;grid-template-columns:38px minmax(0,1fr) 38px!important}
  html.ep-mobile-native body.config-page .copies-box input{width:100%!important;min-width:0!important}
  html.ep-mobile-native body.config-page .binding-card h3{
    white-space:normal!important;flex-wrap:wrap!important;line-height:1.2!important;overflow-wrap:anywhere!important;
  }
  html.ep-mobile-native body.config-page .binding-card h3 small{margin-left:0!important;font-size:10px!important;white-space:normal!important}
  html.ep-mobile-native body.config-page .summary-document{grid-template-columns:minmax(0,1fr) auto!important}
  html.ep-mobile-native body.config-page .summary-document strong,
  html.ep-mobile-native body.config-page .summary-document small,
  html.ep-mobile-native body.config-page .price-breakdown-row span,
  html.ep-mobile-native body.config-page .price-breakdown-row small,
  html.ep-mobile-native body.config-page .summary-row span,
  html.ep-mobile-native body.config-page .summary-total span,
  html.ep-mobile-native body.config-page .no-hidden,
  html.ep-mobile-native body.config-page .no-hidden b,
  html.ep-mobile-native body.config-page .no-hidden span{
    max-width:100%!important;overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important;
  }
  html.ep-mobile-native body.config-page .price-breakdown-row{grid-template-columns:minmax(0,1fr) auto!important}
  html.ep-mobile-native body.config-page .price-breakdown-row>strong{font-size:12px!important;max-width:42%!important}
  html.ep-mobile-native body.config-page .summary-row,
  html.ep-mobile-native body.config-page .summary-total{gap:8px!important;align-items:flex-start!important}
  html.ep-mobile-native body.config-page .summary-row strong,
  html.ep-mobile-native body.config-page .summary-total strong{white-space:nowrap!important;flex:0 0 auto!important}
  html.ep-mobile-native body.config-page .no-hidden{overflow:hidden!important}
  html.ep-mobile-native body.config-page .document-tabs{max-width:100%!important;overflow-x:auto!important}
  html.ep-mobile-native body.config-page .document-tab{min-width:min(235px,88vw)!important;max-width:min(250px,90vw)!important}
  html.ep-mobile-native body.config-page .config-actions{
    height:auto!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important;padding-top:4px!important;
  }
  html.ep-mobile-native body.config-page .config-actions .flow-back,
  html.ep-mobile-native body.config-page .config-actions .flow-continue{width:100%!important;max-width:100%!important}
}
@media (max-width:420px){
  html.ep-mobile-native body.config-page .document-switcher-actions{grid-template-columns:1fr!important}
  html.ep-mobile-native body.config-page .seg,
  html.ep-mobile-native body.config-page .seg.three{grid-template-columns:1fr!important;gap:6px!important}
  html.ep-mobile-native body.config-page .option-card,
  html.ep-mobile-native body.config-page .option-card.tall,
  html.ep-mobile-native body.config-page .option-card.wide{min-height:0!important;height:auto!important}
  html.ep-mobile-native body.config-page .option-card h3{margin-bottom:8px!important}
  html.ep-mobile-native body.config-page .seg-btn{height:40px!important;font-size:12px!important}
  html.ep-mobile-native body.config-page .preview-controls{gap:7px!important;justify-content:space-between!important}
  html.ep-mobile-native body.config-page .preview-controls strong{min-width:0!important;flex:1 1 auto!important;font-size:10px!important}
  html.ep-mobile-native body.config-page .small-control{width:34px!important;height:34px!important;flex:0 0 auto!important}
  html.ep-mobile-native body.config-page .config-summary{padding:16px 12px!important}
  html.ep-mobile-native body.config-page .summary-total strong{font-size:24px!important}
}

/* El consentimiento legal ya no usa checkbox obligatorio. */
.terms-passive{display:block!important;margin:12px 0 0;padding:11px 13px;border-radius:9px;background:#f7f9fc;color:#4b5563;font-size:12px;line-height:1.45}
.terms-passive a{color:#125cc9;font-weight:700;text-decoration:underline;text-underline-offset:2px}
@media (max-width:820px){
  html.ep-mobile-native .terms-passive{font-size:11px!important;line-height:1.45!important;padding:10px 11px!important;overflow-wrap:anywhere!important}
}

/* =========================================================
   v0.9.68 — PAGO MÓVIL SIN RECORTES
   Contiene tarjetas, medios de pago, factura, datos y resumen dentro del viewport.
   ========================================================= */
@media (max-width:820px){
  html.ep-mobile-native body.payment-page .page-shell{width:calc(100% - 16px)!important;max-width:100%!important;min-width:0!important}
  html.ep-mobile-native body.payment-page .payment-grid,
  html.ep-mobile-native body.payment-page .payment-grid>* ,
  html.ep-mobile-native body.payment-page .stack,
  html.ep-mobile-native body.payment-page .stack>* ,
  html.ep-mobile-native body.payment-page .pay-card,
  html.ep-mobile-native body.payment-page .pay-card>* ,
  html.ep-mobile-native body.payment-page .detail-card,
  html.ep-mobile-native body.payment-page .detail-row,
  html.ep-mobile-native body.payment-page .multi-review-copy,
  html.ep-mobile-native body.payment-page .multi-review-heading,
  html.ep-mobile-native body.payment-page .payment-documents,
  html.ep-mobile-native body.payment-page .payment-document-row,
  html.ep-mobile-native body.payment-page .payment-document-main,
  html.ep-mobile-native body.payment-page .payment-document-name,
  html.ep-mobile-native body.payment-page .payment-document-pills,
  html.ep-mobile-native body.payment-page .payment-document-side,
  html.ep-mobile-native body.payment-page .price-block,
  html.ep-mobile-native body.payment-page .price-lines,
  html.ep-mobile-native body.payment-page .delivery-card-copy,
  html.ep-mobile-native body.payment-page .delivery-inline,
  html.ep-mobile-native body.payment-page .contact-box,
  html.ep-mobile-native body.payment-page .contact-title-row,
  html.ep-mobile-native body.payment-page .contact-title-row>div,
  html.ep-mobile-native body.payment-page .contact-fields,
  html.ep-mobile-native body.payment-page .contact-field,
  html.ep-mobile-native body.payment-page .whatsapp-consent,
  html.ep-mobile-native body.payment-page .whatsapp-consent span,
  html.ep-mobile-native body.payment-page .invoice-request-row,
  html.ep-mobile-native body.payment-page .invoice-request-row>label,
  html.ep-mobile-native body.payment-page .safe-panel,
  html.ep-mobile-native body.payment-page .safe-panel>div,
  html.ep-mobile-native body.payment-page .terms-passive,
  html.ep-mobile-native body.payment-page .receipt-box{
    min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
  }
  html.ep-mobile-native body.payment-page .payment-document-name strong,
  html.ep-mobile-native body.payment-page .payment-document-name span,
  html.ep-mobile-native body.payment-page .multi-review-heading h3,
  html.ep-mobile-native body.payment-page .multi-review-heading p,
  html.ep-mobile-native body.payment-page .price-line span,
  html.ep-mobile-native body.payment-page .delivery-inline span,
  html.ep-mobile-native body.payment-page .delivery-inline small,
  html.ep-mobile-native body.payment-page .contact-title-row small,
  html.ep-mobile-native body.payment-page .whatsapp-consent span,
  html.ep-mobile-native body.payment-page .invoice-request-row strong,
  html.ep-mobile-native body.payment-page .invoice-request-row small,
  html.ep-mobile-native body.payment-page .safe-panel p{
    overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important;
  }
  html.ep-mobile-native body.payment-page .pay-choice{
    width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;box-sizing:border-box!important;
  }
  html.ep-mobile-native body.payment-page .pay-choice.mercado{
    display:grid!important;grid-template-columns:24px 48px minmax(0,1fr)!important;gap:7px 9px!important;align-items:center!important;padding:10px!important;
  }
  html.ep-mobile-native body.payment-page .pay-choice.mercado>input{grid-column:1;grid-row:1!important;width:22px!important;height:22px!important}
  html.ep-mobile-native body.payment-page .pay-choice.mercado .mp-payment-logo{grid-column:2;grid-row:1!important;width:48px!important;height:34px!important}
  html.ep-mobile-native body.payment-page .pay-choice.mercado>strong{grid-column:3;grid-row:1!important;min-width:0!important;font-size:14px!important}
  html.ep-mobile-native body.payment-page .pay-choice.mercado .pay-brands{grid-column:2/4!important;grid-row:2!important;margin:0!important;width:100%!important;max-width:100%!important;justify-content:flex-start!important;gap:14px!important;min-width:0!important}
  html.ep-mobile-native body.payment-page .reference-card-brands img:nth-child(1){width:38px!important}
  html.ep-mobile-native body.payment-page .reference-card-brands img:nth-child(2){width:34px!important}
  html.ep-mobile-native body.payment-page .reference-card-brands img:nth-child(3){width:38px!important}
  html.ep-mobile-native body.payment-page .pay-choice.bank-choice{
    display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;gap:7px 9px!important;align-items:center!important;padding:10px!important;
  }
  html.ep-mobile-native body.payment-page .bank-choice>input{grid-column:1;grid-row:1!important;width:22px!important;height:22px!important}
  html.ep-mobile-native body.payment-page .bank-wrap{grid-column:2;grid-row:1!important;min-width:0!important;gap:8px!important}
  html.ep-mobile-native body.payment-page .bank-icon{width:42px!important;height:42px!important;flex:0 0 auto!important}
  html.ep-mobile-native body.payment-page .bank-wrap strong{min-width:0!important;font-size:13px!important;line-height:1.2!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native body.payment-page .bank-alias{grid-column:2!important;grid-row:2!important;margin:0!important;text-align:left!important;font-size:11px!important;white-space:normal!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native body.payment-page .invoice-request-row{display:grid!important;grid-template-columns:1fr!important;height:auto!important;gap:9px!important;padding:10px!important}
  html.ep-mobile-native body.payment-page .invoice-data-btn{width:100%!important;max-width:100%!important;height:38px!important}
  html.ep-mobile-native body.payment-page .invoice-ready-badge{white-space:normal!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native body.payment-page .receipt-box{grid-template-columns:1fr!important}
  html.ep-mobile-native body.payment-page .receipt-pick{width:100%!important;max-width:100%!important}
  html.ep-mobile-native body.payment-page .receipt-status{grid-column:1!important;overflow-wrap:anywhere!important}
  html.ep-mobile-native body.payment-page .price-line,
  html.ep-mobile-native body.payment-page .price-big{gap:8px!important;align-items:flex-start!important}
  html.ep-mobile-native body.payment-page .price-line span,
  html.ep-mobile-native body.payment-page .price-big span{min-width:0!important;flex:1 1 auto!important}
  html.ep-mobile-native body.payment-page .price-line strong,
  html.ep-mobile-native body.payment-page .price-big strong{flex:0 0 auto!important;white-space:nowrap!important}
  html.ep-mobile-native body.payment-page #deliveryDetail{max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
}
@media (max-width:420px){
  html.ep-mobile-native body.payment-page .detail-row,
  html.ep-mobile-native body.payment-page .multi-review-row{grid-template-columns:40px minmax(0,1fr)!important;padding:11px!important;gap:8px!important}
  html.ep-mobile-native body.payment-page .detail-icon{width:40px!important;height:40px!important}
  html.ep-mobile-native body.payment-page .payment-document-row{grid-template-columns:24px minmax(0,1fr)!important;padding:8px!important;gap:7px!important}
  html.ep-mobile-native body.payment-page .payment-document-number{width:24px!important;height:24px!important;font-size:11px!important}
  html.ep-mobile-native body.payment-page .pay-card{padding:13px 10px 16px!important}
  html.ep-mobile-native body.payment-page .safe-panel{grid-template-columns:46px minmax(0,1fr)!important;gap:9px!important;padding:10px!important}
  html.ep-mobile-native body.payment-page .safe-icon{width:42px!important;height:42px!important}
}

/* v0.9.70 — LOGO AL INICIO + NUEVO PEDIDO AL PASAR POR HOME */
.admin-auth-logo-link{display:inline-block;text-decoration:none;color:inherit}


/* =========================================================
   v0.9.70 — navegación móvil al final + logo siempre clickeable
   ========================================================= */
.mobile-config-actions{display:none}
.site-header .brand{
  position:relative!important;
  z-index:60!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
.site-header .brand img{pointer-events:none!important}
.admin-logo-link,.admin-auth-logo-link{position:relative;z-index:5;pointer-events:auto;cursor:pointer}
.admin-logo-link img,.admin-auth-logo-link img{pointer-events:none}
@media (max-width:820px){
  html.ep-mobile-native body.config-page .desktop-config-actions{display:none!important}
  html.ep-mobile-native body.config-page .mobile-config-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    order:99!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    gap:8px!important;
    padding:4px 0 0!important;
    margin:0!important;
  }
  html.ep-mobile-native body.config-page .mobile-config-actions .flow-back,
  html.ep-mobile-native body.config-page .mobile-config-actions .flow-continue{
    width:100%!important;
    max-width:100%!important;
    height:48px!important;
    font-size:14px!important;
  }
  html.ep-mobile-native body.config-page .config-summary{order:98!important}
}


/* =========================================================
   v0.9.71 — PULIDO MÓVIL: acceso + confirmación sin recortes
   ========================================================= */
@media (max-width:820px){
  /* Safari/iOS: usar viewport dinámico real y reservar el área segura inferior. */
  html.ep-mobile-native .access-modal{
    height:100dvh!important;
    max-height:100dvh!important;
    padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))!important;
    box-sizing:border-box!important;
    align-items:flex-end!important;
    overflow:hidden!important;
  }
  html.ep-mobile-native .access-card{
    width:100%!important;
    max-width:520px!important;
    max-height:calc(100dvh - max(16px,env(safe-area-inset-top)) - max(16px,env(safe-area-inset-bottom)))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:18px 16px calc(18px + env(safe-area-inset-bottom))!important;
    border-radius:18px!important;
    box-sizing:border-box!important;
  }
  html.ep-mobile-native .access-icon{width:48px!important;height:48px!important;margin:0 auto 9px!important}
  html.ep-mobile-native .access-icon svg{width:27px!important;height:27px!important}
  html.ep-mobile-native .account-card h2{font-size:21px!important;line-height:1.15!important;margin:0 0 5px!important;text-align:center!important}
  html.ep-mobile-native .account-card #accessBody>p{font-size:12px!important;line-height:1.35!important;margin:0 0 10px!important;text-align:center!important}
  html.ep-mobile-native .account-tabs{margin-bottom:10px!important}
  html.ep-mobile-native .account-tabs button{height:36px!important;font-size:12px!important}
  html.ep-mobile-native .account-form{gap:8px!important}
  html.ep-mobile-native .account-form label{font-size:11px!important}
  html.ep-mobile-native .account-form input{height:40px!important;margin-top:4px!important;font-size:14px!important}
  html.ep-mobile-native .account-form .btn[type="submit"]{
    width:100%!important;height:44px!important;margin-top:4px!important;flex:0 0 auto!important;
    position:sticky!important;bottom:0!important;z-index:4!important;
    box-shadow:0 -8px 14px rgba(255,255,255,.96)!important;
  }

  /* Confirmación: ningún descendiente puede imponer ancho de escritorio. */
  html.ep-mobile-native body.confirm-page .page-shell{
    width:calc(100% - 16px)!important;max-width:100%!important;min-width:0!important;
    padding-left:0!important;padding-right:0!important;
  }
  html.ep-mobile-native body.confirm-page #content,
  html.ep-mobile-native body.confirm-page .confirm-center,
  html.ep-mobile-native body.confirm-page .email-confirmation-chip,
  html.ep-mobile-native body.confirm-page .order-number,
  html.ep-mobile-native body.confirm-page .confirm-grid,
  html.ep-mobile-native body.confirm-page .confirm-grid>*,
  html.ep-mobile-native body.confirm-page .confirm-order-card,
  html.ep-mobile-native body.confirm-page .confirm-file,
  html.ep-mobile-native body.confirm-page .paid-total,
  html.ep-mobile-native body.confirm-page .confirm-documents,
  html.ep-mobile-native body.confirm-page .confirm-document-card,
  html.ep-mobile-native body.confirm-page .confirm-document-head,
  html.ep-mobile-native body.confirm-page .confirm-document-head>div,
  html.ep-mobile-native body.confirm-page .confirm-document-specs,
  html.ep-mobile-native body.confirm-page .delivery-card,
  html.ep-mobile-native body.confirm-page .delivery-item,
  html.ep-mobile-native body.confirm-page .delivery-item>div,
  html.ep-mobile-native body.confirm-page .notify-chip,
  html.ep-mobile-native body.confirm-page .confirm-retention-note,
  html.ep-mobile-native body.confirm-page .invoice-confirm-note,
  html.ep-mobile-native body.confirm-page .confirmation-actions,
  html.ep-mobile-native body.confirm-page .repeat-bar,
  html.ep-mobile-native body.confirm-page .repeat-bar>div{
    min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
  }
  html.ep-mobile-native body.confirm-page .confirm-grid{grid-template-columns:minmax(0,1fr)!important}
  html.ep-mobile-native body.confirm-page .confirm-order-card{
    display:block!important;width:100%!important;height:auto!important;min-height:0!important;
    padding:14px 12px!important;overflow:hidden!important;
  }
  html.ep-mobile-native body.confirm-page .confirm-file{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;
    width:100%!important;padding:0 0 12px!important;border-right:0!important;border-bottom:1px solid #d7dce3!important;
  }
  html.ep-mobile-native body.confirm-page .paid-total{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;
    width:100%!important;align-items:start!important;margin:0!important;padding:0!important;
  }
  html.ep-mobile-native body.confirm-page .paid-total span{min-width:0!important;font-size:14px!important;line-height:1.25!important}
  html.ep-mobile-native body.confirm-page .paid-total strong{
    min-width:0!important;max-width:100%!important;font-size:22px!important;line-height:1.1!important;
    white-space:nowrap!important;text-align:right!important;
  }
  html.ep-mobile-native body.confirm-page .confirm-documents{width:100%!important;margin-top:12px!important}
  html.ep-mobile-native body.confirm-page .confirm-document-card{width:100%!important;padding:9px!important;overflow:hidden!important}
  html.ep-mobile-native body.confirm-page .confirm-document-head{
    width:100%!important;grid-template-columns:26px minmax(0,1fr)!important;gap:7px!important;
  }
  html.ep-mobile-native body.confirm-page .confirm-document-number{width:26px!important;height:26px!important;font-size:11px!important}
  html.ep-mobile-native body.confirm-page .confirm-document-head strong,
  html.ep-mobile-native body.confirm-page .confirm-document-head small,
  html.ep-mobile-native body.confirm-page .confirm-document-head a,
  html.ep-mobile-native body.confirm-page .confirm-document-specs span,
  html.ep-mobile-native body.confirm-page .delivery-item span,
  html.ep-mobile-native body.confirm-page .delivery-item strong,
  html.ep-mobile-native body.confirm-page .delivery-item small,
  html.ep-mobile-native body.confirm-page .notify-chip,
  html.ep-mobile-native body.confirm-page .confirm-retention-note,
  html.ep-mobile-native body.confirm-page .repeat-bar strong,
  html.ep-mobile-native body.confirm-page .repeat-bar span{
    overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important;
  }
  html.ep-mobile-native body.confirm-page .confirm-document-head a{grid-column:2!important;justify-self:start!important}
  html.ep-mobile-native body.confirm-page .confirm-document-specs{
    width:100%!important;grid-template-columns:1fr!important;margin:8px 0 0!important;gap:5px!important;
  }
  html.ep-mobile-native body.confirm-page .delivery-card{width:100%!important;padding:14px 12px!important;overflow:hidden!important}
  html.ep-mobile-native body.confirm-page .delivery-item{grid-template-columns:42px minmax(0,1fr)!important;gap:9px!important;align-items:start!important}
  html.ep-mobile-native body.confirm-page .confirm-square{width:42px!important;height:42px!important}
  html.ep-mobile-native body.confirm-page .confirm-square svg{width:26px!important;height:26px!important}
  html.ep-mobile-native body.confirm-page .notify-chip,
  html.ep-mobile-native body.confirm-page .confirm-retention-note{width:100%!important;height:auto!important;text-align:left!important}
  html.ep-mobile-native body.confirm-page .invoice-confirm-note{width:100%!important;margin:10px 0 0!important}
  html.ep-mobile-native body.confirm-page .confirmation-actions{width:100%!important}
  html.ep-mobile-native body.confirm-page .repeat-bar{width:100%!important;grid-template-columns:48px minmax(0,1fr)!important;padding:12px!important;overflow:hidden!important}
  html.ep-mobile-native body.confirm-page .repeat-icon{width:44px!important;height:44px!important}
  html.ep-mobile-native body.confirm-page .repeat-btn{grid-column:1/3!important;width:100%!important;max-width:100%!important}
}
@media (max-width:420px){
  html.ep-mobile-native .access-card{padding-left:14px!important;padding-right:14px!important}
  html.ep-mobile-native body.confirm-page .paid-total{grid-template-columns:1fr!important}
  html.ep-mobile-native body.confirm-page .paid-total strong{text-align:left!important;font-size:21px!important}
}
