:root{
  --navy:#004366;--navy-2:#063f60;--purple:#7E73CB;--purple-2:#675BBB;--lav:#F4F2FA;
  --ink:#172033;--muted:#647682;--line:#e2e0ef;--bg:#f7f8fc;--white:#fff;--danger:#b42318;--ok:#0b6a50;
  --shadow:0 12px 34px rgba(18,49,75,.08);--radius:18px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.hidden{display:none!important}
.login-page{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;background:#fff}.login-visual{position:relative;background:url('/assets/hero-machu.jpg') center/cover no-repeat;min-height:100vh}.login-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,67,102,.86),rgba(103,91,187,.42))}.login-copy{position:absolute;left:7vw;bottom:9vh;z-index:2;color:#fff;max-width:560px}.login-copy h1{font-family:Georgia,serif;font-size:56px;line-height:1;margin:10px 0}.login-copy p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.9)}.login-panel{display:flex;align-items:center;justify-content:center;padding:48px}.login-card{width:min(430px,100%)}.login-logo{width:210px;max-height:92px;object-fit:contain;object-position:left;margin-bottom:28px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:var(--purple)}.login-card h2{font-family:Georgia,serif;color:var(--navy);font-size:38px;margin:8px 0}.login-card p{color:var(--muted);line-height:1.55}.field{display:grid;gap:7px;margin:15px 0}.field label{font-size:12px;font-weight:800;color:#405363}.control,input,select,textarea{width:100%;border:1px solid #d9ddea;border-radius:12px;background:#fff;padding:12px 13px;color:var(--ink);outline:none}.control:focus,input:focus,select:focus,textarea:focus{border-color:#a49ce5;box-shadow:0 0 0 3px rgba(126,115,203,.12)}textarea{min-height:94px;resize:vertical}.btn{border:0;border-radius:12px;padding:12px 16px;font-weight:850;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--purple);color:#fff;box-shadow:0 9px 20px rgba(103,91,187,.2)}.btn-navy{background:var(--navy);color:#fff}.btn-soft{background:var(--lav);color:var(--purple-2)}.btn-white{background:#fff;color:var(--navy);border:1px solid var(--line)}.btn-danger{background:#fff0ef;color:var(--danger)}.btn-full{width:100%}.error{background:#fff3f2;border:1px solid #ffd5d0;color:#9f1c14;padding:11px 13px;border-radius:12px;font-size:13px}.notice{background:#f5f3ff;border:1px solid #dcd7ff;color:#334A67;padding:12px 14px;border-radius:12px;font-size:13px;line-height:1.5}
.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{background:linear-gradient(180deg,#063f60,#004366);color:#fff;padding:22px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.side-logo{display:flex;align-items:center;gap:10px;padding:0 8px 18px;border-bottom:1px solid rgba(255,255,255,.13)}.side-logo img{width:54px;height:54px;object-fit:contain}.side-logo strong{display:block}.side-logo small{opacity:.72}.nav-list{display:grid;gap:7px;margin-top:20px}.nav-btn{border:0;background:transparent;color:rgba(255,255,255,.82);padding:12px 13px;text-align:left;border-radius:11px;font-weight:750;display:flex;gap:10px;align-items:center}.nav-btn:hover,.nav-btn.active{background:rgba(255,255,255,.12);color:#fff}.side-bottom{margin-top:auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.13)}.side-user{font-size:13px;padding:8px}.side-user small{display:block;opacity:.68;margin-top:3px}.main{min-width:0}.topbar{height:72px;background:#fff;border-bottom:1px solid #e8eaf0;display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.topbar h1{font-family:Georgia,serif;color:var(--navy);font-size:24px;margin:0}.top-actions{display:flex;gap:10px;align-items:center}.content{padding:26px;max-width:1540px;margin:auto}.view{display:none}.view.active{display:block}.hero-strip{border-radius:22px;padding:28px;background:linear-gradient(135deg,#063f60,#0a5778);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:var(--shadow)}.hero-strip h2{font-family:Georgia,serif;font-size:34px;margin:4px 0}.hero-strip p{margin:0;color:rgba(255,255,255,.84)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.stat{background:#fff;border:1px solid #e5e7ef;border-radius:16px;padding:18px;box-shadow:0 5px 18px rgba(18,49,75,.04)}.stat span{font-size:12px;color:var(--muted);font-weight:750}.stat strong{display:block;font-size:30px;color:var(--navy);margin-top:5px}.card{background:#fff;border:1px solid #e3e6ee;border-radius:var(--radius);box-shadow:0 7px 26px rgba(18,49,75,.05);padding:20px}.card+.card{margin-top:16px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.card-head h3{margin:0;color:var(--navy);font-family:Georgia,serif;font-size:24px}.subtle{font-size:13px;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid #e6e8ef;border-radius:14px}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:13px 14px;border-bottom:1px solid #edf0f5;text-align:left;font-size:13px;vertical-align:top}th{background:#fafbfe;color:#536475;font-size:11px;text-transform:uppercase;letter-spacing:.04em}tr:last-child td{border-bottom:0}.table-link{font-weight:850;color:var(--navy);cursor:pointer}.badge{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:850;background:#eef4f7;color:var(--navy)}.badge.purple{background:#f1effb;color:#675BBB}.badge.green{background:#eaf7f1;color:#0b6a50}.badge.orange{background:#fff5e9;color:#a95e00}.empty{padding:30px;text-align:center;color:var(--muted)}
.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.editor-main{display:grid;gap:16px}.sticky-summary{position:sticky;top:90px}.section-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.section-title h3{margin:0;color:var(--navy);font-size:21px}.section-title p{margin:4px 0 0;color:var(--muted);font-size:12px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mini-label{font-size:11px;color:var(--muted);font-weight:800}.check-row{display:flex;gap:10px;align-items:center}.check-row input{width:auto}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-card{border:1px solid #e2e5ed;border-radius:14px;padding:13px;display:grid;gap:9px;background:#fff}.service-card.selected{border-color:#bcb4ec;background:#faf9ff}.service-title{display:flex;justify-content:space-between;gap:10px}.service-title strong{font-size:13px;color:#213746}.service-title input{width:auto}.service-meta{font-size:11px;color:var(--muted)}.inline-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.summary-total{background:linear-gradient(135deg,#063f60,#004366);color:#fff;border-radius:16px;padding:18px}.summary-total span{font-size:12px;opacity:.8}.summary-total strong{display:block;font-size:34px;margin:3px 0}.money-lines{display:grid;gap:9px;margin-top:14px}.money-line{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #edf0f5;padding-bottom:8px;font-size:13px}.money-line:last-child{border:0}.summary-actions{display:grid;gap:8px;margin-top:14px}.editor-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.editor-tab{border:1px solid #dfe3ec;background:#fff;color:#536475;padding:9px 12px;border-radius:10px;font-weight:750}.editor-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.editor-pane{display:none}.editor-pane.active{display:block}.repeater{display:grid;gap:10px}.repeat-row{border:1px solid #e2e5ed;border-radius:14px;padding:14px;background:#fff}.row-actions{display:flex;gap:7px;justify-content:flex-end;margin-top:10px}.icon-btn{border:1px solid #e0e4ec;background:#fff;border-radius:9px;padding:7px 9px;color:#5d6f7b}.warning-list{display:grid;gap:8px;margin:12px 0}.warning-item{background:#fff8e8;border:1px solid #f3ddb0;color:#7b5616;padding:10px 12px;border-radius:11px;font-size:12px}
.planner-toolbar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:14px}.days-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:12px;align-items:start}.day-column{border:1px solid #dfe3eb;border-radius:16px;background:#fbfcfe;min-height:230px;overflow:hidden}.day-head{background:#fff;padding:13px;border-bottom:1px solid #e9ebf1}.day-head strong{display:block;color:var(--navy)}.day-head small{color:var(--muted)}.day-items{padding:10px;display:grid;gap:8px;min-height:150px}.day-items.drag-over{background:#f3f1fb}.itin-item{background:#fff;border:1px solid #e1e5ee;border-radius:12px;padding:10px;box-shadow:0 4px 14px rgba(18,49,75,.04);cursor:grab}.itin-item:active{cursor:grabbing}.itin-item-top{display:flex;justify-content:space-between;gap:8px}.itin-item strong{font-size:12px;color:#263c4c}.itin-item small{display:block;color:var(--muted);margin-top:4px;line-height:1.4}.itin-type{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--purple);font-weight:900}.add-activity{margin:0 10px 10px;width:calc(100% - 20px)}
.document-wrap{background:#dfe3e8;padding:24px;border-radius:18px;overflow:auto}.a4{width:210mm;min-height:297mm;margin:0 auto 18px;background:#fff;box-shadow:0 12px 34px rgba(0,0,0,.14);position:relative;overflow:hidden}.doc-cover{height:297mm;position:relative;background:url('/assets/hero-machu.jpg') center/cover no-repeat;color:#fff}.doc-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,50,75,.28),rgba(0,50,75,.12) 40%,rgba(0,50,75,.84))}.doc-logo{position:absolute;top:20mm;left:18mm;z-index:2;width:55mm;filter:drop-shadow(0 3px 8px rgba(0,0,0,.2))}.doc-cover-copy{position:absolute;left:18mm;right:18mm;bottom:28mm;z-index:2}.doc-cover-copy .kicker{text-transform:uppercase;letter-spacing:.18em;font-weight:900;font-size:10px}.doc-cover-copy h1{font-family:Georgia,serif;font-size:42px;line-height:1;margin:8px 0 12px}.doc-cover-copy p{font-size:16px;max-width:150mm;line-height:1.5}.doc-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.doc-meta span{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);backdrop-filter:blur(6px);padding:8px 10px;border-radius:999px;font-size:10px}.doc-page{padding:16mm 17mm}.doc-page h2{font-family:Georgia,serif;color:var(--navy);font-size:27px;margin:0 0 6px}.doc-page .lead{color:var(--muted);line-height:1.5;margin:0 0 16px}.doc-day{border:1px solid #e2e0ef;border-radius:16px;overflow:hidden;margin:0 0 11px;break-inside:avoid}.doc-day-head{padding:11px 13px;background:linear-gradient(90deg,#f3f1fb,#f8fbfd);display:flex;justify-content:space-between;gap:12px}.doc-day-head strong{color:var(--navy)}.doc-day-head span{font-size:10px;color:var(--purple);font-weight:900}.doc-day-body{padding:12px 14px}.doc-activity{display:grid;grid-template-columns:58px 1fr;gap:9px;padding:7px 0;border-bottom:1px solid #edf0f4}.doc-activity:last-child{border:0}.doc-time{font-size:10px;font-weight:900;color:var(--purple)}.doc-activity b{font-size:11px;color:#263c4c}.doc-activity p{font-size:10px;color:var(--muted);margin:3px 0 0;line-height:1.45}.doc-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.doc-info{border:1px solid #e2e5ed;border-radius:13px;padding:12px}.doc-info h3{font-size:12px;color:var(--navy);margin:0 0 8px}.doc-info p,.doc-info li{font-size:10px;color:#5b6d79;line-height:1.5}.doc-price{background:#063f60;color:#fff;border-radius:16px;padding:14px;margin-top:14px}.doc-price strong{font-size:24px;display:block}.confirmation{padding:16mm}.conf-title{display:flex;justify-content:space-between;gap:20px;border-bottom:2px solid #eee;padding-bottom:12px}.conf-title img{width:48mm;object-fit:contain}.conf-title h1{font-family:Georgia,serif;color:var(--navy);font-size:25px;margin:0}.conf-section{margin-top:14px}.conf-section h3{font-size:12px;color:var(--purple);text-transform:uppercase;letter-spacing:.08em}.conf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.conf-box{border:1px solid #e2e5ed;border-radius:11px;padding:10px}.conf-box span{display:block;font-size:9px;color:var(--muted)}.conf-box strong{font-size:11px;color:#263c4c}.footer-note{font-size:9px;color:#6e7d87;border-top:1px solid #e6e8ee;margin-top:15px;padding-top:10px}
.modal-backdrop{position:fixed;inset:0;background:rgba(4,26,40,.55);display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal{width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:20px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.modal h3{margin:0;color:var(--navy);font-family:Georgia,serif;font-size:24px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
@media(max-width:1100px){.app-shell{grid-template-columns:82px 1fr}.side-logo div,.nav-btn span,.side-user,.side-bottom .btn span{display:none}.side-logo{justify-content:center}.nav-btn{justify-content:center;font-size:18px}.editor-layout{grid-template-columns:1fr}.sticky-summary{position:static}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:24px}.app-shell{display:block}.sidebar{height:auto;position:sticky;top:0;z-index:40;display:flex;flex-direction:row;align-items:center;padding:8px 10px}.side-logo{border:0;padding:0}.side-logo img{width:42px;height:42px}.nav-list{display:flex;margin:0 0 0 8px;overflow:auto}.nav-btn{padding:10px}.side-bottom{margin:0 0 0 auto;padding:0;border:0}.topbar{top:58px;padding:0 14px;height:60px}.topbar h1{font-size:20px}.content{padding:14px}.stats{grid-template-columns:1fr 1fr}.hero-strip{padding:20px;display:block}.hero-strip .btn{margin-top:14px}.grid-2,.grid-3,.grid-4,.service-grid{grid-template-columns:1fr}.document-wrap{padding:8px}.a4{width:100%;min-height:0}.doc-cover{height:120vw;min-height:520px}.doc-page,.confirmation{padding:24px}.doc-info-grid,.conf-grid{grid-template-columns:1fr}.top-actions .btn-soft{display:none}}
@media print{body{background:#fff}.sidebar,.topbar,.no-print,.editor-layout>.editor-main,.document-wrap>.no-print{display:none!important}.app-shell,.main,.content,.view.active{display:block!important;padding:0;margin:0;max-width:none}.document-wrap{background:#fff;padding:0}.a4{width:210mm;min-height:297mm;margin:0;box-shadow:none;page-break-after:always}.a4:last-child{page-break-after:auto}.doc-cover{height:297mm}.view:not(#documentsView){display:none!important}}
/* Alpha 2 refinements */
h4{margin:8px 0 12px}.repeat-row .field{margin:8px 0}.repeat-row>.grid-4,.repeat-row>.grid-3,.repeat-row>.grid-2{align-items:end}.service-card .field{margin:4px 0}.service-card input[type=number]{padding:9px 10px}.itin-item .icon-btn{padding:4px 7px}.doc-price small{display:block;margin-top:5px;opacity:.78}.confirmation .doc-day{margin-top:8px}.confirmation .doc-day-head{padding:8px 10px}.confirmation .doc-day-body{padding:8px 10px}.confirmation .doc-activity{padding:5px 0}.confirmation ul{margin:0;padding-left:18px}.confirmation li{font-size:10px;color:#5b6d79;margin:4px 0}.table-wrap .icon-btn{white-space:nowrap}

/* Alpha 1.2 — inteligencia operativa y UX */
.editor-tab.complete:not(.active){border-color:#b7ddcc;background:#f2fbf7;color:#17664d;position:relative}
.editor-tab.complete:not(.active)::after{content:" ✓";font-weight:900}
.hotel-status{border-radius:12px;padding:10px 12px;margin-bottom:10px;font-size:12px}
.hotel-status.ok{background:#edf9f4;border:1px solid #b8dfcf;color:#16654d}
.hotel-status.warn{background:#fff8e8;border:1px solid #f3ddb0;color:#7b5616}
.hotel-status.neutral{background:#f4f6f9;border:1px solid #e2e5ed;color:#596b78}
.machu-intro{display:grid;grid-template-columns:1fr 2fr;gap:12px;align-items:end;margin-bottom:12px}
.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.option-card{border:1px solid #e2e5ed;border-radius:15px;padding:14px;background:#fff}.option-card:last-child{grid-column:1/-1}.option-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;color:var(--navy)}.mini-note{font-size:11px;color:var(--muted);margin-top:8px}
.train-card{display:grid;gap:10px}.train-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.train-head .check-row{margin:0}
.day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.manual-day{border-style:dashed;border-color:#b9afe7}.manual-day .day-head{background:#f8f6ff}.icon-btn.danger{color:#a52a2a;border-color:#efc7c7}.success-item{background:#edf9f4;border:1px solid #b8dfcf;color:#16654d;padding:10px 12px;border-radius:11px;font-size:12px;margin:12px 0}
.compact-line{display:flex;justify-content:space-between;gap:8px;margin:5px 0}.breakdown-link{display:block;width:100%;margin-top:9px;border:0;background:#f3f1fb;color:#675bbb;border-radius:10px;padding:9px 10px;font-weight:850;text-align:left;cursor:pointer}.breakdown-link:hover{background:#ece8fb}.breakdown-table{max-height:48vh;overflow:auto;margin-top:12px}.breakdown-totals{display:grid;gap:8px;margin-top:14px;border-top:1px solid #e5e7ee;padding-top:12px}.breakdown-totals>div{display:flex;justify-content:space-between;gap:12px}.breakdown-totals .grand{font-size:17px;color:var(--navy);border-top:1px solid #e5e7ee;padding-top:9px;margin-top:3px}.hotel-doc-row{display:grid;gap:3px;padding:6px 0;border-bottom:1px solid #eef0f4}.hotel-doc-row:last-child{border:0}.hotel-doc-row b{font-size:10px;color:var(--navy)}.hotel-doc-row span{font-size:10px;color:#5b6d79}
@media(max-width:760px){.machu-intro,.option-grid{grid-template-columns:1fr}.option-card:last-child{grid-column:auto}}

/* Alpha 1.3 — plantillas de paquetes y arranque guiado */
.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.template-group+.template-group{margin-top:24px}.template-group-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}.template-group-head h4{font-family:Georgia,serif;color:var(--navy);font-size:20px;margin:0}.template-group-head span{font-size:12px;color:var(--muted)}.template-card{border:1px solid #e2e5ed;border-radius:16px;padding:15px;background:linear-gradient(180deg,#fff,#fbfbfe);display:flex;flex-direction:column;min-height:210px;box-shadow:0 5px 18px rgba(18,49,75,.04)}.template-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.template-card h4{font-size:17px;color:var(--navy);margin:12px 0 7px}.template-card p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}.template-meta{font-size:11px;color:#536475;margin:12px 0}.template-actions{margin-top:auto;padding-top:10px}.template-actions .btn{width:100%}.modal-wide{width:100%}.modal-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:var(--purple);margin-bottom:4px}.modal:has(.modal-wide){width:min(1050px,96vw)}.modal-template-grid{max-height:58vh;overflow:auto;padding-right:4px}.start-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.start-card{border:1px solid #dfe3ec;border-radius:16px;background:#fff;padding:18px;text-align:left;display:grid;gap:7px;color:var(--navy)}.start-card b{font-size:18px}.start-card span{font-size:12px;color:var(--muted);line-height:1.45}.start-card.featured{border-color:#bdb5ed;background:#faf9ff;box-shadow:0 8px 22px rgba(103,91,187,.09)}.start-card:hover{transform:translateY(-1px);border-color:#a9a0e5}.template-active{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid #dcd7ff;background:#f8f6ff;border-radius:14px;padding:12px 14px;margin-bottom:14px}.template-active>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.template-active b{color:var(--navy)}.template-active small{width:100%;color:var(--muted);margin-top:2px}.badge.purple{background:#f0edff;color:#6457b8}
@media(max-width:1000px){.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.template-grid,.start-choice{grid-template-columns:1fr}.template-active{align-items:flex-start;flex-direction:column}.template-active .btn{width:100%}}

/* Alpha 1.4 — productividad, auditor y Última Hora 3B */
.dashboard-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:16px;margin-top:16px}.ops-task-list{display:grid;gap:8px}.ops-task{width:100%;border:1px solid #e1e6ec;background:#fff;border-radius:12px;padding:11px;display:flex;gap:10px;text-align:left;cursor:pointer}.ops-task:hover{border-color:#a9a0e5;background:#faf9ff}.ops-task.high{border-left:4px solid #b85c26}.ops-task b{display:block;color:var(--navy);font-size:12px}.ops-task small{display:block;color:var(--muted);font-size:10px;margin-top:3px;line-height:1.4}.template-inactive{opacity:.58}.template-admin-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:8px}.template-admin-actions .icon-btn{font-size:10px}.payment-rule{margin-top:10px}.help-dot{width:22px;height:22px;border-radius:50%;border:1px solid #c9c4e8;background:#fff;color:var(--purple);font-weight:900;cursor:pointer;vertical-align:middle}.help-dot:hover{background:#f0edff}.help-copy{line-height:1.65;color:#536475}.last-minute-panel,.rail-strategy,.review-strategy{border:1px solid #d9d3ff;background:linear-gradient(180deg,#fbfaff,#f5f3ff);border-radius:16px;padding:14px;margin:0 0 14px}.last-minute-head,.rail-strategy-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.last-minute-head h4,.rail-strategy h4,.review-strategy h4{margin:6px 0 0;color:var(--navy)}.risk-chip{font-size:10px;font-weight:900;border-radius:999px;padding:7px 9px;background:#eaf7f2;color:#17664d}.risk-chip.risk-high{background:#fff1e8;color:#9b4a1c}.ops-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.ops-strip>div,.review-grid>div{border:1px solid #e2e0ef;border-radius:11px;padding:9px;background:#fff}.ops-strip small,.review-grid small{display:block;color:var(--muted);font-size:9px}.ops-strip b,.review-grid b{display:block;color:var(--navy);font-size:11px;margin-top:2px}.last-minute-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px}.rail-recommendations{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px}.rail-rec{border:1px solid #ddd9f4;background:#fff;border-radius:12px;padding:10px;text-align:left;cursor:pointer;display:grid;gap:3px}.rail-rec.preferred{border-color:#8b7fdb;background:#f2efff}.rail-rec span{font-size:9px;color:var(--purple);font-weight:900}.rail-rec b{font-size:10px;color:var(--navy)}.rail-rec small{font-size:9px;color:var(--muted)}.review-score{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.review-score>div{border-radius:13px;background:#f5f7fa;padding:12px}.review-score strong{font-size:24px;color:var(--navy);display:block}.review-score span{font-size:10px;color:var(--muted)}.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;margin-top:10px}.review-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.review-item{padding:9px 10px;border:1px solid #e3e7eb;border-radius:10px;margin:6px 0;font-size:11px}.review-item.ok{background:#f1faf6;border-color:#c8e5d9}.review-item.warn{background:#fff8e8;border-color:#f3ddb0}.review-item.info{background:#f6f5ff;border-color:#ddd8fa}.review-item b,.review-item small{display:block}.review-item small{color:var(--muted);margin-top:2px}.compat-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.compat{padding:6px 8px;border-radius:999px;font-size:10px;font-weight:800;background:#eef1f4}.compat.good{background:#eaf8f2;color:#17664d}.compat.tight{background:#fff7e7;color:#8a5b00}.compat.bad{background:#fff0ef;color:#9f2d27}.doc-ops-note{border:1px solid #dcd7ff;background:#f8f6ff;border-radius:12px;padding:10px;margin-top:10px;break-inside:avoid}.doc-ops-note>b{font-size:10px;color:#675bbb}.doc-ops-note p{font-size:9px!important;color:#4e6170!important;line-height:1.5!important;margin:5px 0!important}
@media(max-width:1100px){.dashboard-grid{grid-template-columns:1fr}.rail-recommendations{grid-template-columns:repeat(3,1fr)}.review-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ops-strip,.review-columns,.review-score,.review-grid{grid-template-columns:1fr}.rail-recommendations{grid-template-columns:1fr 1fr}.last-minute-head,.last-minute-actions{display:block}.last-minute-actions .btn{width:100%;margin-top:6px}}

/* Alpha 1.7 — cierre lógico: alternativas, alojamiento multitarifa y 3B contextual */
.template-filter-bar{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 18px}.filter-chip{border:1px solid #dfe3ec;background:#fff;color:#536475;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:850;cursor:pointer}.filter-chip:hover,.filter-chip.active{background:#f0edff;border-color:#bcb4ec;color:#675bbb}.template-modal-group{margin:0 0 22px}.template-modal-group>h4{font-family:Georgia,serif;color:var(--navy);font-size:19px;margin:0 0 10px}.template-modal-group[hidden]{display:none!important}
.hotel-scenarios{margin-top:18px;border-top:1px solid #e7e9ef;padding-top:18px}.scenario-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}.scenario-head h4{color:var(--navy);font-size:18px;margin:7px 0 4px}.scenario-head p{color:var(--muted);font-size:12px;line-height:1.5;margin:0;max-width:850px}.scenario-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.scenario-card{border:1px solid #e2e5ed;border-radius:14px;padding:12px;background:#fafbfd;opacity:.7}.scenario-card.enabled{background:#fff;opacity:1}.scenario-title{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #eef0f5;padding-bottom:8px;margin-bottom:9px}.scenario-title b{color:var(--navy);font-size:12px}.scenario-title span{font-size:9px;color:var(--muted)}.scenario-card>p{font-size:11px;color:var(--muted);line-height:1.45;margin:4px 0}.scenario-city{display:grid;grid-template-columns:.7fr 1.5fr .7fr;gap:9px;align-items:end;padding:7px 0;border-bottom:1px dashed #edf0f4}.scenario-city:last-child{border-bottom:0}.scenario-city>div:first-child{align-self:center}.scenario-city b{display:block;color:#304859;font-size:11px}.scenario-city small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.scenario-city .field{margin:0}.scenario-city .field label{font-size:9px}.scenario-city input,.scenario-city select{padding:9px 10px}.contingency-row{border-color:#efdcaa;background:#fffaf0}.contingency-row:before{content:"Alojamiento de contingencia operativa";display:block;color:#8b6115;font-size:10px;font-weight:900;margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}
.doc-hotel-options{margin-top:16px;break-inside:avoid}.doc-hotel-options h3{font-family:Georgia,serif;color:var(--navy);font-size:17px;margin:3px 0 4px}.doc-hotel-options>p{font-size:10px;color:var(--muted);line-height:1.45;margin:0 0 9px}.doc-hotel-options .table-wrap{border-radius:11px}.doc-hotel-options table th,.doc-hotel-options table td{padding:7px 8px;font-size:9px}.doc-hotel-options table th{font-size:8px}.doc-hotel-options td small{display:block;color:#8b6115;margin-top:2px;font-size:8px}.doc-alternative{background:#fbfaff;border:1px dashed #cfc8f4;border-radius:10px;padding:9px!important;margin:4px 0}.choice-list{display:grid;gap:4px;margin-top:6px}.choice-list span{display:block;font-size:10px;color:#526573;background:#fff;border:1px solid #ebe8fa;border-radius:8px;padding:6px 8px}.choice-list span b{color:#675bbb}
@media(max-width:900px){.scenario-grid{grid-template-columns:1fr}.scenario-city{grid-template-columns:1fr 1fr}.scenario-city>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.scenario-city{grid-template-columns:1fr}.scenario-city>div:first-child{grid-column:auto}.template-filter-bar{overflow:auto;flex-wrap:nowrap;padding-bottom:4px}.filter-chip{white-space:nowrap}}
@media print{.doc-hotel-options,.doc-alternative{break-inside:avoid}.doc-hotel-options .table-wrap{overflow:visible}}

/* Alpha 1.7 · campos informativos y matrices de configuración */
.static-field{min-height:42px;display:flex;align-items:center;padding:10px 12px;border:1px solid var(--line,#d9deea);border-radius:10px;background:#f7f9fc;font-weight:700}
.settings-rate-city{margin:14px 0;padding:14px;border:1px solid var(--line,#d9deea);border-radius:14px;background:#fff}
.settings-rate-city h4{margin:0 0 10px}

.editor-refresh-row{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:10px 0 4px;border-top:1px solid #eef0f7;margin-top:6px}.editor-refresh-row span{font-size:12px;color:#667085}.scenario-base{min-width:220px}.base-scenario{outline:2px solid rgba(119,101,207,.28);box-shadow:0 0 0 3px rgba(119,101,207,.06)}.hotel-location-row .mini-note{margin-top:8px}.summary-actions #refreshQuoteBtn{border-color:#cfc6ff}

/* Alpha 1.8 — tren manual definitivo + propuesta A2 mejorada */
.train-card{position:relative}.train-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.train-include{font-size:14px;color:var(--navy);font-weight:900}.train-include input{appearance:none;-webkit-appearance:none;width:23px!important;height:23px!important;border:2px solid #8e84d5;border-radius:6px;background:#fff;display:grid;place-items:center;flex:0 0 23px}.train-include input:checked{background:var(--purple);border-color:var(--purple)}.train-include input:checked:after{content:'✓';color:#fff;font-size:16px;font-weight:900;line-height:1}.train-manual-note{border:1px solid #d9d3ff;background:#f8f6ff;border-radius:11px;padding:9px 11px;margin-bottom:10px;color:#425568;font-size:11px;line-height:1.45}.train-manual-note b{color:#675bbb}.train-price-grid input{font-weight:850;color:var(--navy);background:#fffdf8}.day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.day-head-actions{display:flex;gap:5px}.day-head-actions [data-day-passenger]{font-size:10px;font-weight:900;color:#675bbb;background:#f5f2ff;border-color:#d9d3ff}.editor-pane .check-row input[type="checkbox"]{min-width:18px;min-height:18px;accent-color:var(--purple)}

/* A2 passenger proposal */
.a2-page{font-family:Arial,Helvetica,sans-serif;color:#263448;background:#fff;overflow:hidden}.a2-page *{box-sizing:border-box}.a2-page h1,.a2-page h2,.a2-page h3,.a2-page h4{font-family:Georgia,'Times New Roman',serif;color:#15214f}.a2-page-inner{padding:16mm 17mm 21mm}.a2-brandbar{height:16mm;padding:3.5mm 12mm;display:flex;align-items:center;border-bottom:1px solid #eceaf5;gap:8mm}.a2-brandbar img{width:38mm;max-height:10mm;object-fit:contain;object-position:left}.a2-brandbar span{font-size:8pt;letter-spacing:.08em;color:#7d8196;border-left:1px solid #cfcbdc;padding-left:7mm}.a2-brandbar b{margin-left:auto;font-size:7pt;letter-spacing:.08em;color:#2b235d}.a2-hero-grid{height:71mm;display:grid;grid-template-columns:2fr 1fr;gap:1.2mm;background:#fff}.a2-hero-main,.a2-hero-side{position:relative;overflow:hidden}.a2-hero-main>img,.a2-hero-side img{width:100%;height:100%;object-fit:cover;display:block}.a2-hero-side{display:grid;grid-template-rows:1fr .8fr;gap:1.2mm}.a2-hero-main:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,15,35,.66) 0%,rgba(12,15,35,.28) 48%,rgba(12,15,35,0) 82%)}.a2-hero-copy{position:absolute;z-index:2;left:12mm;bottom:8mm;color:#fff;width:70%}.a2-hero-copy span{display:inline-block;background:#5f3d92;padding:2mm 3mm;font-size:7pt;font-weight:800;letter-spacing:.04em}.a2-hero-copy h1{color:#fff;font-size:25pt;line-height:1.02;margin:3mm 0 2mm}.a2-hero-copy p{font-size:9.5pt;line-height:1.35;margin:0;color:#fff}.a2-meta-bar{margin:0 9mm;min-height:22mm;display:grid;grid-template-columns:1fr 1fr 1.35fr;border-radius:0 0 4mm 4mm;background:#fff;box-shadow:0 2mm 6mm rgba(22,31,61,.08);overflow:hidden}.a2-meta-bar>div{padding:5mm 6mm;border-right:1px solid #eceaf4;display:grid;gap:1.5mm}.a2-meta-bar>div:last-child{border:0;background:linear-gradient(135deg,#5e3a91,#7654aa);color:#fff}.a2-meta-bar b{font-family:Georgia,serif;color:#33236d;font-size:9pt}.a2-meta-bar span{font-size:8pt;line-height:1.35;color:#556174}.a2-meta-bar>div:last-child b,.a2-meta-bar>div:last-child span{color:#fff}.a2-cover-body{display:grid;grid-template-columns:1.18fr .82fr;gap:5mm;padding:7mm 10mm 5mm}.a2-section-title{border-left:2mm solid #5f3d92;padding-left:4mm;margin-bottom:3mm}.a2-section-title h2{font-size:14pt;margin:0 0 1mm}.a2-section-title span{font-size:7.5pt;color:#687383}.a2-summary-list{display:grid;gap:2mm}.a2-summary-row{display:grid;grid-template-columns:9mm 26mm 1fr;gap:3mm;align-items:center;min-height:17mm;background:#f7f7fb;border-radius:3mm;padding:2.3mm}.a2-day-circle{width:9mm;height:9mm;border-radius:50%;background:#5f3d92;color:#fff;display:grid;place-items:center;font-size:7.5pt;font-weight:900}.a2-summary-row img{width:26mm;height:14mm;object-fit:cover;border-radius:2mm}.a2-summary-row b{font-family:Georgia,serif;color:#172151;font-size:8.6pt}.a2-summary-row p{font-size:6.8pt;line-height:1.25;color:#596577;margin:1mm 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.a2-more-days{font-size:7pt;color:#675bbb;font-weight:800;padding:2mm 3mm;background:#f5f2ff;border-radius:2mm}.a2-cover-body aside{display:grid;gap:2.6mm;align-content:start}.a2-side-card{background:#f7f7fb;border-radius:3mm;padding:4mm}.a2-side-card h3{font-size:11pt;margin:0 0 2mm}.a2-side-card p{font-size:6.8pt;color:#647080;line-height:1.35;margin:2mm 0 0}.a2-side-card ul{list-style:none;padding:0;margin:0;display:grid;gap:1.3mm}.a2-side-card li{font-size:7.2pt;line-height:1.3;color:#455264}.a2-chip-list{display:flex;gap:1.5mm;flex-wrap:wrap}.a2-chip-list span{font-size:6.6pt;font-weight:800;color:#5f3d92;background:#fff;border:1px solid #dfdaf2;border-radius:999px;padding:1.3mm 2mm}.a2-facts{display:grid;grid-template-columns:1fr 1fr;gap:2mm}.a2-facts span{font-size:6.6pt;color:#596577;line-height:1.25}.a2-facts b{display:block;color:#33236d;font-size:6.8pt}.a2-important{margin:0 10mm 14mm;background:linear-gradient(90deg,#f0ebfb,#f7f4fc);border-radius:3mm;padding:4mm;display:grid;grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:3mm;align-items:center}.a2-important b{font-family:Georgia,serif;color:#3a276e;font-size:9pt}.a2-important span{font-size:6.6pt;line-height:1.3;color:#5f6174;border-left:1px solid #c9c1dc;padding-left:3mm}.a2-footer{position:absolute;bottom:0;left:0;right:0;height:13mm;border-top:1px solid #e7e4f0;display:flex;align-items:center;justify-content:space-between;padding:2.2mm 11mm;background:#fff}.a2-footer>div{display:flex;align-items:center;gap:4mm}.a2-footer img{width:27mm;max-height:8mm;object-fit:contain}.a2-footer span,.a2-footer b{font-size:6.4pt;color:#6a7181}.a2-footer b{color:#353b4c}.a2-page-kicker{font-size:7.5pt;font-weight:900;letter-spacing:.16em;color:#7766cc}.a2-page-title{border-bottom:1px solid #e8e5f2;padding-bottom:4mm;margin:1.5mm 0 5mm}.a2-page-title h1{font-size:19pt;margin:0 0 2mm}.a2-page-title p{font-size:8.2pt;line-height:1.45;color:#687383;max-width:160mm;margin:0}.a2-day-detail{border:1px solid #dedbea;border-radius:4mm;padding:4.5mm 5mm;margin-bottom:5mm;break-inside:avoid;min-height:111mm}.a2-day-detail:last-child{margin-bottom:0}.a2-day-detail-head{display:grid;grid-template-columns:1fr 36mm;gap:4mm;align-items:center;border-bottom:1px solid #efedf5;padding-bottom:3mm}.a2-day-detail-head span{font-size:7pt;font-weight:900;color:#7766cc;letter-spacing:.08em}.a2-day-detail-head h2{font-size:14pt;margin:1mm 0}.a2-day-detail-head small{font-size:7pt;color:#6c7483}.a2-day-detail-head img{width:36mm;height:22mm;object-fit:cover;border-radius:3mm}.a2-day-summary{font-size:8pt;line-height:1.45;color:#4d5b6a;margin:3mm 0}.a2-approx{display:grid;grid-template-columns:1fr 1fr;gap:3mm;background:#faf9fd;border-radius:2.5mm;padding:2.5mm 3mm;margin-bottom:3mm}.a2-approx span{font-size:7pt;line-height:1.3;color:#596577}.a2-approx b{display:block;color:#33236d;margin-bottom:.8mm}.a2-visits h4,.a2-train-box h4,.a2-inout h4{font-family:Arial,sans-serif;font-size:7.3pt;text-transform:uppercase;letter-spacing:.06em;color:#49367e;margin:0 0 1.5mm}.a2-visits>div{display:flex;flex-wrap:wrap;gap:1.3mm}.a2-visits span{background:#f4f2fa;border:1px solid #e4dff1;border-radius:999px;padding:1.2mm 2mm;font-size:6.6pt;color:#485567}.a2-train-box{margin-top:3mm;border-left:1.5mm solid #5f3d92;background:#faf9fd;padding:2.5mm 3mm;border-radius:0 2.5mm 2.5mm 0}.a2-train-box>div{display:grid;grid-template-columns:24mm 1fr;gap:2mm;font-size:7pt;margin:1mm 0}.a2-train-box>div b{color:#34246e}.a2-train-box>div span{color:#4f5e6d}.a2-train-box small{display:block;font-size:6.2pt;color:#777c89;line-height:1.35;margin-top:1.5mm}.a2-inout{display:grid;grid-template-columns:1fr 1fr;gap:3mm;margin-top:3mm}.a2-inout>div{border-radius:2.5mm;padding:2.5mm 3mm;background:#f8faf9}.a2-inout>div:last-child{background:#fcf8f8}.a2-inout ul{margin:0;padding-left:4mm}.a2-inout li{font-size:6.7pt;line-height:1.32;color:#52606f;margin:.7mm 0}.a2-day-detail .doc-ops-note{margin-top:3mm;padding:2.5mm 3mm}.a2-day-detail .doc-ops-note p{font-size:6.5pt!important;line-height:1.35!important}.a2-rate-table{border:1px solid #dedbea;border-radius:3mm;overflow:hidden}.a2-rate-table table{margin:0}.a2-rate-table th,.a2-rate-table td{padding:2.4mm 3mm;font-size:7.2pt}.a2-rate-table th{font-size:6.3pt;background:#f5f3fa;color:#5c6172}.a2-rate-table td b{color:#202b55}.a2-rate-table td small{display:block;color:#a36d17;font-size:6pt;margin-top:1mm}.a2-rate-table tr.pending{background:#fffaf1}.a2-empty-rate{padding:8mm;border:1px dashed #cfc9df;border-radius:3mm;color:#667080;font-size:8pt}.a2-commercial-grid{display:grid;grid-template-columns:1fr 1fr;gap:4mm;margin:5mm 0}.a2-commercial-grid section{background:#f8f8fb;border-radius:3mm;padding:4mm}.a2-commercial-grid h3{font-size:11pt;margin:0 0 2mm}.a2-commercial-grid ul{margin:0;padding-left:4mm}.a2-commercial-grid li{font-size:7.4pt;line-height:1.4;margin:1mm 0;color:#4e5d6d}.a2-payment-box{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:3mm;background:linear-gradient(90deg,#f0ebfb,#f8f6fc);border-radius:3mm;padding:4mm;margin:4mm 0}.a2-payment-box div{font-size:7pt;color:#5f6776}.a2-payment-box b{display:block;color:#392b6b;margin-bottom:1mm}.a2-terms{border-top:1px solid #e6e3ed;padding-top:3.5mm}.a2-terms h3{font-size:11pt;margin:0 0 2mm}.a2-terms ol{columns:2;column-gap:8mm;margin:0;padding-left:5mm}.a2-terms li{font-size:6.8pt;line-height:1.4;margin:0 0 1.5mm;color:#576374;break-inside:avoid}.a2-legal-note{margin-top:3mm;padding:2.5mm 3mm;background:#faf9fd;border-radius:2mm;font-size:6.5pt;color:#6a7180;line-height:1.4}
@media print{.a2-page{page-break-after:always;box-shadow:none!important;margin:0!important}.a2-page:last-child{page-break-after:auto}.document-wrap{background:#fff;padding:0}.a2-day-detail{break-inside:avoid}}

/* Alpha 1.9 · editor maestro A2, confirmación y exportación A4 */
.content-master-grid{display:grid;grid-template-columns:minmax(230px,.78fr) minmax(0,1.7fr);gap:16px;align-items:start}.master-content-list{display:grid;gap:7px;position:sticky;top:92px}.master-content-list button{border:1px solid #e1e4ee;background:#fff;border-radius:11px;padding:10px 12px;text-align:left;color:#30485a;font-weight:800}.master-content-list button.active{border-color:#aaa0e5;background:#f6f3ff;color:#5f50ae}.master-content-preview{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:16px}.master-image-panel{border:1px solid #e1e4ee;border-radius:14px;padding:12px;background:#fbfcfe}.master-image-panel img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:11px;background:#edf0f5}.master-train-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.master-train-card{border:1px solid #e1e4ee;border-radius:15px;padding:12px;background:#fff}.master-train-card img{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:10px;background:#eef0f5;margin-bottom:8px}.cover-image-editor{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.cover-image-editor section{border:1px solid #e1e4ee;border-radius:14px;padding:12px}.cover-image-editor img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px;background:#eef0f5}.day-passenger-edit-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px}.day-image-editor{border:1px solid #e1e4ee;border-radius:14px;padding:12px;background:#fbfcfe}.day-image-editor img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:11px;background:#eef0f5}.confirmation-editor{display:grid;gap:14px}.confirmation-selected{border:1px solid #d9d3ff;background:#f8f6ff;border-radius:14px;padding:14px}.confirmation-selected-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.confirmation-selected-grid div{background:#fff;border-radius:10px;padding:10px;border:1px solid #e8e4fa}.confirmation-selected-grid span{display:block;font-size:11px;color:#667482}.confirmation-selected-grid b{display:block;color:var(--navy);font-size:17px;margin-top:3px}.confirmation-actions{display:flex;flex-wrap:wrap;gap:9px}.conf-inout{display:grid;grid-template-columns:1fr 1fr;gap:12px}.standalone-document{background:#dfe3e8;min-height:100vh}.standalone-toolbar{position:sticky;top:0;z-index:40;display:flex;justify-content:center;gap:10px;padding:12px;background:rgba(255,255,255,.96);border-bottom:1px solid #dde1e8}.standalone-pages{padding:22px 0 34px}.a2-cover-rates{display:grid;gap:1.1mm;margin-top:1mm}.a2-cover-rate-head,.a2-cover-rate-row{display:grid;grid-template-columns:1.3fr .8fr .9fr;gap:1.5mm;align-items:center}.a2-cover-rate-head{font-size:5.7pt;text-transform:uppercase;letter-spacing:.04em;color:#7a7e8b}.a2-cover-rate-row{background:#fff;border:1px solid #e5e0f3;border-radius:1.7mm;padding:1.2mm 1.7mm;font-size:6.4pt;color:#4f5a6b}.a2-cover-rate-row b{font-size:6.6pt;color:#392b6b}.a2-train-visual{margin-top:2.5mm}.a2-train-visual h4{font-family:Arial,sans-serif;font-size:7.3pt;text-transform:uppercase;letter-spacing:.06em;color:#49367e;margin:0 0 1.5mm}.a2-train-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8mm}.a2-train-card{border:1px solid #e0dbea;border-radius:2.2mm;padding:1.5mm;background:#fff;min-width:0}.a2-train-card.included{border-color:#7766cc;background:#f8f6ff}.a2-train-card img{width:100%;height:14mm;object-fit:cover;border-radius:1.5mm;background:#eef0f5}.a2-train-card b{display:block;font-size:6.6pt;color:#33236d;margin:1.1mm 0 .5mm}.a2-train-card span{display:block;font-size:5.8pt;color:#5c6775;line-height:1.25}.a2-train-card small{display:block;margin-top:.8mm;color:#6b5bbb;font-size:5.6pt;line-height:1.2}.a2-page:not(.a2-cover) .a2-page-inner{padding:10.5mm 15mm 16mm}.a2-page:not(.a2-cover) .a2-page-title{margin:1mm 0 3.5mm;padding-bottom:3mm}.a2-day-detail{min-height:0;padding:3.6mm 4.2mm;margin-bottom:3.5mm}.a2-day-detail-head{padding-bottom:2.2mm}.a2-day-summary{margin:2mm 0}.a2-approx{margin-bottom:2mm;padding:2mm 2.5mm}.a2-inout{margin-top:2mm}.a2-train-box{margin-top:2mm}.a2-day-detail .doc-ops-note{margin-top:2mm}.a2-page-title h1{font-size:17.5pt}.a2-page-title p{font-size:7.7pt}.a2-day-detail-head h2{font-size:12.8pt}.a2-day-detail-head img{height:19mm}.a2-day-summary{font-size:7.4pt}.a2-approx span{font-size:6.5pt}.a2-visits span{font-size:6.1pt}.a2-inout li{font-size:6.2pt}.a2-train-box>div{font-size:6.5pt}.a2-train-box small{font-size:5.8pt}

@media(max-width:1000px){.content-master-grid,.master-content-preview,.day-passenger-edit-grid{grid-template-columns:1fr}.master-content-list{position:static}.master-train-grid,.cover-image-editor{grid-template-columns:1fr 1fr}.confirmation-selected-grid{grid-template-columns:1fr}.conf-inout{grid-template-columns:1fr}}
@media(max-width:640px){.master-train-grid,.cover-image-editor{grid-template-columns:1fr}}

@page{size:A4;margin:0}
@media print{
  html,body{margin:0!important;padding:0!important;background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .no-print,.standalone-toolbar,.topbar,.sidebar{display:none!important}
  .standalone-document,.standalone-pages,.document-wrap{background:#fff!important;padding:0!important;margin:0!important}
  .a4,.a2-page{width:210mm!important;height:297mm!important;min-height:297mm!important;max-height:297mm!important;margin:0!important;box-shadow:none!important;overflow:hidden!important;break-after:page!important;page-break-after:always!important}
  .a4:last-child,.a2-page:last-child{break-after:auto!important;page-break-after:auto!important}
  .a2-day-detail{break-inside:avoid!important;page-break-inside:avoid!important;min-height:0!important}
}
/* Alpha 1.9 correction: each portada editor is one card inside grid-3 */
.cover-image-editor{display:grid!important;grid-template-columns:1fr!important;gap:8px;border:1px solid #e1e4ee;border-radius:14px;padding:12px}.cover-image-editor img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px;background:#eef0f5}

/* Alpha 1.10 · flujo, habitaciones, rutas, trenes y seguimiento */
.editor-tabs{padding:7px;background:#f7f8fc;border:1px solid #e4e6ef;border-radius:14px;gap:6px}.editor-tab{position:relative;padding:10px 13px}.editor-tab.complete:not(.active){border-color:#c9eadc;background:#f1faf6;color:#0b6a50}.editor-tab.na:not(.active){border-color:#dde2ea;background:#f5f6f8;color:#77828e}.editor-refresh-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fbfcfe;border:1px solid #e6e9f0;border-radius:12px;padding:9px 11px;margin-bottom:14px}.editor-refresh-row span{font-size:12px;color:#667482}
.room-editor{margin:12px 0;border:1px solid #e3def4;border-radius:14px;padding:12px;background:#fbfaff}.room-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.room-editor-head span{display:block;font-size:11px;color:#6e7480;margin-top:2px}.room-count-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.room-count-grid .field{margin:0}.room-capacity{display:flex;justify-content:space-between;gap:12px;margin-top:10px;padding:8px 10px;border-radius:9px;font-size:12px}.room-capacity.good{background:#edf9f3;color:#0b6a50}.room-capacity.warn{background:#fff8e8;color:#7b5616}.room-capacity.bad{background:#fff0ef;color:#9f1c14}
.train-upgrade-editor{margin:14px 0;border:1px solid #dcd6f3;background:#faf8ff;border-radius:15px;padding:14px}.train-upgrade-editor>div:first-child{display:grid;gap:3px;margin-bottom:8px}.train-upgrade-editor span{font-size:12px;color:#667482}.train-tier-stack{display:grid;gap:2mm}.train-tier{border:1px solid #e3deef;border-radius:2.5mm;padding:2mm;background:#fff}.train-tier.included{border-color:#7968ca;background:#faf8ff}.train-tier-head{display:flex;justify-content:space-between;gap:3mm;align-items:center;margin-bottom:1.5mm}.train-tier-head b{font-size:6.7pt;color:#34246e}.train-tier-head span{font-size:5.9pt;color:#6555ad}.train-pair{display:grid;grid-template-columns:1fr 1fr;gap:1.7mm}.train-pair-card{display:grid;grid-template-columns:20mm 1fr;align-items:center;gap:1.5mm;background:#f7f8fb;border-radius:1.8mm;padding:1mm}.train-pair-card img{width:20mm;height:10mm;object-fit:cover;border-radius:1.2mm;background:#e9edf2}.train-pair-card b{font-size:6.3pt;color:#263c4c}.train-pair-card span{display:block;font-size:5.4pt;color:#6a7480}.train-tier>small{display:block;font-size:5.6pt;color:#6555ad;margin-top:1.2mm}
.route-visual{margin:2.6mm 0}.route-visual h4{font-family:Arial,sans-serif;font-size:7.3pt;text-transform:uppercase;letter-spacing:.06em;color:#49367e;margin:0 0 1.5mm}.route-line{display:flex;align-items:flex-start;gap:0;overflow:hidden}.route-stop{position:relative;flex:1;min-width:0;text-align:center;padding-top:4.3mm}.route-stop:before{content:"";position:absolute;top:1.6mm;left:0;right:0;height:.45mm;background:#d9d2ee}.route-stop:first-child:before{left:50%}.route-stop:last-child:before{right:50%}.route-stop i{position:absolute;top:.55mm;left:50%;transform:translateX(-50%);width:2.5mm;height:2.5mm;border-radius:50%;background:#725fc3;border:.55mm solid #eeeafd;z-index:1}.route-stop span{display:block;font-size:5.8pt;line-height:1.2;color:#52606f;padding:0 .6mm}.machu-feature-day .a2-day-detail-head img{height:25mm}.machu-feature-day{border-color:#cfc5ee;background:linear-gradient(180deg,#fff,#fdfcff)}
.terms-accept-box{border:1px solid #ddd6f5;background:#fbfaff;border-radius:14px;padding:13px}.conf-status-line{display:flex;align-items:center;gap:10px;margin:8px 0 14px}.conf-status-line>span:not(.badge){font-size:12px;color:#667482}.follow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.follow-card{border:1px solid #e1e4ec;border-radius:14px;padding:13px;background:#fff}.follow-card h4{margin:0 0 8px;color:var(--navy)}.follow-card .field{margin:8px 0}.static-field{border:1px solid #e1e5ee;background:#f8fafc;border-radius:11px;padding:11px;font-size:12px;color:#425566}.hotel-rate-row{display:grid;grid-template-columns:100px 80px repeat(4,1fr);gap:7px;align-items:end;border-bottom:1px solid #eef0f5;padding:8px 0}.hotel-rate-row>b{font-size:12px;color:#334a5b;padding-bottom:10px}.hotel-rate-row label{font-size:10px;color:#647682;font-weight:700}.hotel-rate-row input,.hotel-rate-row select{padding:8px;border-radius:9px}.tour-cost-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tour-cost-row{display:grid;grid-template-columns:1fr 120px;gap:8px;align-items:center;border:1px solid #e6e8ef;border-radius:11px;padding:9px}.tour-cost-row span{font-size:12px;font-weight:700;color:#405363}.catalog-actions{display:flex;align-items:center;gap:10px;margin:12px 0}.custom-tour-list{display:grid;gap:6px;margin-bottom:12px}.custom-tour-list>div{display:flex;align-items:center;gap:6px;border:1px solid #e6e8ef;border-radius:10px;padding:7px 9px}.custom-tour-list span{margin-right:auto;font-size:12px;color:#405363}.master-train-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.master-train-card img{height:120px;aspect-ratio:auto}
.service-investment{border-color:#d3caef}.voucher-page .confirmation{padding-bottom:15mm}
@media(max-width:1150px){.room-count-grid{grid-template-columns:repeat(3,1fr)}.hotel-rate-row{grid-template-columns:90px 70px repeat(2,1fr)}.follow-grid{grid-template-columns:1fr}}
@media(max-width:700px){.room-count-grid,.tour-cost-grid{grid-template-columns:1fr}.hotel-rate-row{grid-template-columns:1fr 1fr}.route-line{display:grid;grid-template-columns:1fr}.route-stop{text-align:left;padding:1.4mm 0 1.4mm 5mm}.route-stop:before{left:1.1mm!important;right:auto!important;top:0;bottom:0;width:.45mm;height:auto}.route-stop i{left:1.1mm;top:2mm}.train-pair{grid-template-columns:1fr}}
@media print{
  .confirmation-page,.voucher-page{page-break-after:always!important;break-after:page!important;overflow:hidden!important}.confirmation-page:last-child,.voucher-page:last-child{page-break-after:auto!important;break-after:auto!important}
  .route-stop span{font-size:5.7pt}.editor-refresh-row{display:none!important}
}

/* ===================== ALPHA 1.11 PRE-WEB ===================== */
.internal-note{display:flex;align-items:center;gap:10px;border:1px solid #e8dcae;background:#fffaf0;color:#705315;border-radius:12px;padding:10px 12px;margin-top:12px}.internal-note b{font-size:10px;text-transform:uppercase;letter-spacing:.06em;background:#f3e4aa;border-radius:999px;padding:4px 8px}.internal-note span{font-size:12px}.cover-design-panel{margin-top:14px;border:1px solid #ddd8f3;background:#fbfaff;border-radius:14px;padding:12px 14px}.cover-design-panel summary{cursor:pointer;font-weight:850;color:var(--navy)}.cover-design-panel input[type=color]{height:44px;padding:5px}.confirmation-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.confirmation-flow span{border:1px solid #e1e4ec;border-radius:999px;padding:8px 11px;text-align:center;font-size:11px;font-weight:800;color:#677482;background:#fff}.confirmation-flow span.active{border-color:#9f94df;background:#f2efff;color:#5c4fb0}.ops-progress{display:grid;grid-template-columns:1fr 220px;gap:18px;align-items:center;background:linear-gradient(135deg,#f4f1ff,#f8fbfd);border:1px solid #dfdaf4;border-radius:14px;padding:13px 15px;margin-bottom:12px}.ops-progress b{display:block;color:var(--navy);font-size:16px}.ops-progress span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.ops-progress progress{width:100%;height:12px}.ops-quoted{background:#f7f8fb;border-radius:9px;padding:8px 10px;font-size:11px;color:#61717d;margin-bottom:8px}.follow-card .grid-2{gap:8px}.machu-meal-card{grid-column:1/-1}.train-head .check-row,.option-head .check-row{display:flex;align-items:center;justify-content:center}.conf-inout>div{border-radius:12px;padding:12px}.conf-inout>div:first-child{background:linear-gradient(135deg,#eef8f2,#f4f1ff)}.conf-inout>div:last-child{background:#fff2f4}.a2-commercial-grid section:first-child{background:linear-gradient(135deg,#eef8f2,#f4f1ff)}.a2-commercial-grid section:last-child{background:#fff2f4}.a2-inout>div:first-child{background:linear-gradient(135deg,#eff8f2,#f5f2ff)}.a2-inout>div:last-child{background:#fff2f4}.a2-train-visual>p{font-size:6.2pt;line-height:1.25;color:#6d7380;margin:0 0 1.4mm}.summary-long .a2-cover-body{padding-top:5mm;gap:4mm}.summary-long .a2-summary-list{gap:1.2mm}.summary-long .a2-summary-row{grid-template-columns:8mm 22mm 1fr;gap:2mm;min-height:13mm;padding:1.5mm 1.8mm}.summary-long .a2-day-circle{width:8mm;height:8mm;font-size:6.7pt}.summary-long .a2-summary-row img{width:22mm;height:10mm}.summary-long .a2-summary-row b{font-size:7.4pt}.summary-long .a2-summary-row p{font-size:5.8pt;line-height:1.15;-webkit-line-clamp:1}.summary-long .a2-side-card{padding:3mm}.summary-very-long .a2-cover-body{padding-top:4mm}.summary-very-long .a2-summary-list{gap:.8mm}.summary-very-long .a2-summary-row{grid-template-columns:7mm 19mm 1fr;gap:1.7mm;min-height:10.5mm;padding:1.1mm 1.5mm}.summary-very-long .a2-day-circle{width:7mm;height:7mm;font-size:6pt}.summary-very-long .a2-summary-row img{width:19mm;height:8.5mm}.summary-very-long .a2-summary-row b{font-size:6.8pt}.summary-very-long .a2-summary-row p{display:none}.summary-very-long .a2-side-card{padding:2.6mm}.summary-very-long .a2-side-card li{font-size:6.3pt}.summary-very-long .a2-cover-rates{gap:.7mm}.summary-very-long .a2-cover-rate-row{padding:.9mm 1.3mm;font-size:5.8pt}.a2-hero-copy{max-width:78%;width:auto}.a2-hero-copy h1{margin:3mm 0 2mm}.a2-hero-copy[style*="text-align:center"] p,.a2-hero-copy[style*="text-align:center"] span{margin-left:auto;margin-right:auto}.a2-hero-copy[style*="text-align:right"] span{margin-left:auto}.a2-hero-copy[style*="text-align:right"] p{margin-left:auto}.hotel-location-row{box-shadow:0 4px 14px rgba(18,49,75,.035)}
@media(max-width:760px){.confirmation-flow{grid-template-columns:1fr}.ops-progress{grid-template-columns:1fr}.machu-meal-card{grid-column:auto}}
@media print{.a2-train-visual>p{font-size:5.8pt}.summary-long .a2-summary-row,.summary-very-long .a2-summary-row{break-inside:avoid}}
/* =================== END ALPHA 1.11 PRE-WEB =================== */

/* ===================== ALPHA 1.12 PRE-WEB ===================== */
.service-mode-chip{display:inline-flex;margin-left:7px;padding:2px 7px;border-radius:999px;font-size:9px;font-weight:850;vertical-align:middle;background:#eef2f6;color:#445767}.service-mode-chip.private{background:#f0ecff;color:#5f50ae}.service-mode-chip.shared{background:#eaf7f1;color:#0b6a50}.service-mode-chip.pending{background:#fff4df;color:#8a5b00}.summary-service-mode{display:inline-block;margin-left:1.5mm;font-style:normal;font-size:5.5pt;font-weight:800;color:#675bbb;background:#eeebfb;border-radius:999px;padding:.5mm 1.2mm}.day-service-mode{display:grid;gap:.5mm;margin-top:1.4mm}.day-service-mode b{font-family:Arial,sans-serif!important;font-size:6.4pt;color:#5c4fb0}.day-service-mode small{font-size:5.6pt!important;color:#6c7483!important;line-height:1.25}.doc-mode{display:inline-block;margin-left:5px;padding:1px 5px;border-radius:999px;background:#f0edfb;color:#675bbb;font-size:9px}.doc-day-mode{font-size:10px;color:#5f50ae;background:#f7f5fd;border-radius:8px;padding:6px 9px;margin:5px 0 7px}.train-availability-note{font-size:5.8pt;line-height:1.25;color:#7a4a53;background:#fff2f4;border-left:1.2mm solid #d88996;border-radius:0 1.7mm 1.7mm 0;padding:1.2mm 1.8mm;margin:0 0 1.5mm}

/* Portada A4 estable: pantalla y PDF comparten la misma caja física. */
.a2-cover{height:297mm!important;min-height:297mm!important;max-height:297mm!important;overflow:hidden!important}.a2-cover .a2-brandbar{height:15mm;padding:3mm 11mm}.a2-cover .a2-hero-grid{height:61mm!important;grid-template-columns:2fr 1fr!important}.a2-cover .a2-hero-side{grid-template-rows:1fr 1fr!important}.a2-cover .a2-meta-bar{height:20mm;min-height:20mm;margin:0 8mm;grid-template-columns:1.02fr .8fr .82fr 1.4fr}.a2-cover .a2-meta-bar>div{padding:3.6mm 4mm;align-content:center}.a2-cover .a2-meta-bar b{font-size:7.7pt}.a2-cover .a2-meta-bar span{font-size:6.6pt;line-height:1.25}.a2-cover .a2-cover-body{height:157mm!important;overflow:hidden!important;padding:5mm 9mm 4mm;gap:4mm}.a2-cover .a2-important{position:absolute;left:9mm;right:9mm;bottom:14mm;margin:0;padding:3mm;min-height:12mm}.a2-cover .a2-important b{font-size:8pt}.a2-cover .a2-important span{font-size:5.8pt}.a2-cover .a2-section-title{margin-bottom:2mm}.a2-cover .a2-section-title h2{font-size:12pt}.a2-cover .a2-side-card{padding:3mm}.a2-cover .a2-side-card h3{font-size:9.5pt}.a2-cover .a2-side-card li{font-size:6.4pt}.a2-cover .a2-facts{gap:1.3mm}.a2-cover .a2-facts span,.a2-cover .a2-facts b{font-size:5.8pt}.a2-cover .a2-cover-rate-row{padding:.9mm 1.2mm;font-size:5.6pt}.a2-cover .a2-cover-rate-row b{font-size:5.9pt}.a2-cover .a2-cover-rate-head{font-size:5.2pt}

/* 7-10 jornadas: compactación automática sin ocultar días ni miniaturas. */
.summary-long .a2-summary-list{gap:.75mm}.summary-long .a2-summary-row{grid-template-columns:6.8mm 18mm 1fr;gap:1.4mm;min-height:9.8mm;padding:.9mm 1.2mm}.summary-long .a2-day-circle{width:6.6mm;height:6.6mm;font-size:5.8pt}.summary-long .a2-summary-row img{width:18mm;height:7.8mm;border-radius:1.3mm}.summary-long .a2-summary-row b{font-size:6.5pt;line-height:1.05}.summary-long .a2-summary-row p{font-size:5.1pt;line-height:1.05;-webkit-line-clamp:1;margin:.4mm 0 0}.summary-long .summary-service-mode{font-size:4.6pt;padding:.35mm .9mm}.summary-long .a2-side-card{padding:2.4mm}.summary-long .a2-side-card h3{font-size:8.4pt}.summary-long .a2-side-card li{font-size:5.7pt;line-height:1.18}.summary-long .a2-cover-rates{gap:.5mm}
/* 11-14 jornadas: conserva foto, número y título; omite solo el microresumen. */
.summary-very-long .a2-cover-body{padding-top:3.6mm}.summary-very-long .a2-summary-list{gap:.45mm}.summary-very-long .a2-summary-row{grid-template-columns:6mm 15.5mm 1fr;gap:1.1mm;min-height:7.9mm;padding:.65mm 1mm}.summary-very-long .a2-day-circle{width:5.7mm;height:5.7mm;font-size:5pt}.summary-very-long .a2-summary-row img{width:15.5mm;height:6.6mm}.summary-very-long .a2-summary-row b{font-size:5.8pt;line-height:1}.summary-very-long .a2-summary-row p,.summary-very-long .summary-service-mode{display:none}.summary-very-long .a2-side-card{padding:2mm}.summary-very-long .a2-side-card h3{font-size:7.7pt}.summary-very-long .a2-side-card li{font-size:5.2pt}.summary-very-long .a2-facts span,.summary-very-long .a2-facts b{font-size:5.2pt}

/* Jornadas: máximo dos por página lo decide JS; la tarjeta nunca se corta. */
.itinerary-detail-page .a2-page-inner{padding:9.5mm 14mm 16mm}.itinerary-detail-page .a2-day-detail{break-inside:avoid!important;page-break-inside:avoid!important;margin-bottom:3mm}.itinerary-detail-page .a2-day-detail:last-child{margin-bottom:0}.itinerary-detail-page .a2-day-detail-head{grid-template-columns:1fr 40mm}.itinerary-detail-page .a2-day-detail-head img{width:40mm;height:23mm}.itinerary-detail-page .machu-feature-day .a2-day-detail-head img{height:27mm}.itinerary-detail-page .a2-inout>div{min-height:18mm}

/* Términos y condiciones en página independiente. */
.terms-page .a2-page-inner{padding:13mm 16mm 18mm}.terms-page .a2-page-title{margin-bottom:4mm}.terms-grid{display:grid;grid-template-columns:1fr 1fr;gap:3mm 4mm}.terms-card{display:grid;grid-template-columns:8mm 1fr;gap:2.5mm;border:1px solid #e3dff0;border-radius:3mm;padding:3mm;background:#fbfafe;break-inside:avoid}.terms-card>span{width:7mm;height:7mm;border-radius:50%;display:grid;place-items:center;background:#6d5bbb;color:#fff;font-size:6pt;font-weight:900}.terms-card h3{font-family:Arial,sans-serif;font-size:7.4pt;margin:0 0 1mm;color:#392b6b}.terms-card p{font-size:6.4pt;line-height:1.38;color:#536070;margin:0}.terms-accept-note{margin-top:4mm;border-left:1.5mm solid #675bbb;background:#f4f1ff;border-radius:0 2.5mm 2.5mm 0;padding:3mm}.terms-accept-note b{font-size:7pt;color:#3d2f72}.terms-accept-note p{font-size:6.3pt;line-height:1.35;color:#5d6573;margin:1mm 0 0}.investment-page .a2-page-inner{padding-bottom:18mm}

@media print{
  html,body{width:210mm!important;background:#fff!important}.standalone-pages{padding:0!important}.a4,.a2-page{width:210mm!important;height:297mm!important;min-height:297mm!important;max-height:297mm!important;margin:0!important;box-shadow:none!important;overflow:hidden!important;page-break-after:always!important;break-after:page!important}.a4:last-child,.a2-page:last-child{page-break-after:auto!important;break-after:auto!important}.a2-cover .a2-hero-grid{height:61mm!important}.a2-cover .a2-cover-body{height:157mm!important}.a2-summary-row,.a2-day-detail,.terms-card{break-inside:avoid!important;page-break-inside:avoid!important}
}
/* =================== END ALPHA 1.12 PRE-WEB =================== */
.day-mode-badge{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:850;background:#eef2f6;color:#405363}.day-mode-badge.private{background:#f0ecff;color:#5f50ae}.day-mode-badge.shared{background:#eaf7f1;color:#0b6a50}.day-mode-badge.mixed{background:#fff2e2;color:#9a5d08}.day-mode-badge.pending{background:#fff4df;color:#8a5b00}

/* ===================== ALPHA 1.13 PRE-WEB ===================== */
.cover-save-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:12px}.compact-train-only .train-tier{margin-top:1.5mm}.compact-train-only .train-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-train-only .train-pair-card{min-height:18mm}.follow-card[data-op-service]{border-left:3px solid #dad4f3}.follow-card[data-op-service] .ops-quoted{background:#f5f3fb}.ops-progress progress{accent-color:var(--purple)}
/* La franja comercial de portada nunca puede quedar debajo de las fotos. */
.a2-cover .a2-brandbar{position:relative;z-index:8}.a2-cover .a2-hero-grid{position:relative;z-index:1;overflow:hidden!important}.a2-cover .a2-meta-bar{display:grid!important;position:relative!important;z-index:10!important;visibility:visible!important;opacity:1!important;transform:none!important;background:#fff}.a2-cover .a2-meta-bar>div:last-child{background:#7048aa;color:#fff}.a2-cover .a2-meta-bar>div:last-child b,.a2-cover .a2-meta-bar>div:last-child span{color:#fff}
@media print{
  @page{size:A4;margin:0}
  html,body{margin:0!important;padding:0!important;width:210mm!important;min-width:210mm!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
  .standalone-pages,.document-wrap{margin:0!important;padding:0!important;background:#fff!important}
  .a2-cover .a2-meta-bar{display:grid!important;position:relative!important;z-index:20!important;visibility:visible!important;opacity:1!important;height:20mm!important;min-height:20mm!important;max-height:20mm!important;break-inside:avoid!important;page-break-inside:avoid!important}
  .a2-cover .a2-hero-grid{height:61mm!important;max-height:61mm!important;overflow:hidden!important}
  .a2-cover .a2-cover-body{height:157mm!important;max-height:157mm!important;overflow:hidden!important}
  .a2-cover,.a2-page{transform:none!important;zoom:1!important}
}
/* =================== END ALPHA 1.13 PRE-WEB =================== */


/* ===================== ALPHA 1.14 PRE-WEB ===================== */
/* Miniaturas A2: foto principal y miniatura pueden ser distintas. */
.thumbnail-editor{margin-top:12px;border:1px solid #ded9f3;background:#fbfaff;border-radius:14px;padding:11px;display:grid;gap:10px}.thumbnail-editor>div:first-child{display:grid;grid-template-columns:92px 1fr;gap:11px;align-items:center}.thumbnail-editor>div:first-child img{width:92px;height:58px;object-fit:cover;border-radius:10px;background:#eef0f5}.thumbnail-editor>div:first-child b{display:block;color:var(--navy)}.thumbnail-editor>div:first-child span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.day-thumb-local{border-top:1px solid #e6e2f3;margin-top:10px;padding-top:10px;display:grid;gap:8px}.day-thumb-local>img{width:100%;height:84px;object-fit:cover;border-radius:10px;background:#eef0f5}
/* El fallback Machu se muestra como una única foto limpia; sin franja superior residual. */
.a2-summary-row img,.a2-day-detail-head img{object-position:center center}
/* Referencias ferroviarias más visibles aprovechando la misma anchura del bloque. */
.train-pair-card{grid-template-columns:24mm 1fr;gap:1.8mm;padding:1.2mm;min-height:15mm}.train-pair-card img{width:24mm;height:13mm;border-radius:1.4mm}.compact-train-only .train-pair-card{grid-template-columns:29mm 1fr;min-height:20mm;padding:1.4mm}.compact-train-only .train-pair-card img{width:29mm;height:16mm}.compact-train-only .train-pair{gap:2.2mm}
/* Zona segura del título: el texto nunca debe tocar la franja de fechas/pasajeros. */
.a2-cover .a2-hero-copy{max-width:80%!important;max-height:49mm!important;overflow:visible;box-sizing:border-box}.a2-cover .a2-hero-copy h1{line-height:1.01!important;margin:2.2mm 0 1.6mm!important}.a2-cover .a2-hero-copy p{font-size:8.4pt!important;line-height:1.25!important;max-width:118mm}.a2-cover .a2-hero-side{grid-template-rows:1fr 1fr!important}
.a2-payment-note{margin-top:3mm;border-left:1.4mm solid #675bbb;background:#f6f3ff;border-radius:0 2.5mm 2.5mm 0;padding:2.6mm 3mm;color:#536070;font-size:6.6pt;line-height:1.4}.a2-payment-note b{display:block;color:#392b6b;margin-bottom:.8mm}
/* T&C específicos más legibles: menos tarjetas por página y texto ligeramente mayor. */
.terms-card p{font-size:6.8pt;line-height:1.42}.terms-card h3{font-size:7.7pt}.terms-page .a2-page-inner{padding-top:12mm}
@media print{
  .a2-cover .a2-hero-copy{max-height:49mm!important;overflow:visible!important}.train-pair-card img{width:24mm!important;height:13mm!important}.compact-train-only .train-pair-card img{width:29mm!important;height:16mm!important}
}
/* =================== END ALPHA 1.14 PRE-WEB =================== */


/* ===================== ALPHA 1.15 PRE-WEB ===================== */
/* Editor global de Ruta del día: cada línea es una parada y cada parada puede tener miniatura propia. */
.route-points-master{margin:12px 0;border:1px solid #ded9f3;background:#fbfaff;border-radius:14px;padding:12px}.route-points-master-head b{display:block;color:var(--navy)}.route-points-master-head span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.route-point-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}.route-point-editor-card{display:grid;grid-template-columns:68px 1fr;gap:10px;align-items:center;border:1px solid #e5e1f3;border-radius:12px;background:#fff;padding:9px}.route-point-editor-card>img{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid #d9d1f3;background:#eef0f5}.route-point-editor-card b{display:block;color:#26385b;font-size:12px}.route-point-editor-card span{display:block;color:var(--muted);font-size:10px;margin:2px 0 6px}.route-point-editor-card input[type=file]{font-size:10px;padding:7px}.route-point-editor-card .route-point-clear{margin-top:6px;padding:7px 9px;font-size:10px}
/* Ruta visual universal para tours, paquetes, Machu Picchu y servicios base. */
.route-visual-thumbs{margin:3mm 0 3.2mm;padding:2.4mm 3mm;border:1px solid #e3def3;border-radius:3mm;background:#fbfaff}.route-visual-head{display:flex;align-items:center;justify-content:space-between;gap:3mm;margin-bottom:2mm}.route-visual-head h4{margin:0!important;font-family:Arial,sans-serif!important;font-size:8pt!important;text-transform:none!important;letter-spacing:0!important;color:#5e49b4!important}.route-visual-head span{font-size:5.8pt;color:#687383}.route-flow{display:grid;grid-template-columns:repeat(var(--route-cols),minmax(0,1fr));gap:2mm 3.4mm;align-items:start}.route-node{position:relative;min-width:0;text-align:center}.route-node:not(.route-row-end):after{content:'→';position:absolute;right:-2.9mm;top:4.4mm;color:#7662c8;font-size:9pt;line-height:1}.route-node-image{width:12mm;height:12mm;margin:0 auto 1.2mm;border-radius:50%;padding:.65mm;border:.55mm solid #cfc6ee;background:#fff;box-shadow:0 1mm 2.5mm rgba(35,30,85,.07)}.route-node-image img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.route-node>span{display:block;font-size:5.45pt;line-height:1.12;font-weight:700;color:#3f4962;overflow-wrap:anywhere}
/* Portada: tres imágenes reales, título siempre por encima de la fotografía y misma altura en pantalla/PDF. */
.a2-cover .a2-hero-grid{height:71mm!important;max-height:71mm!important;overflow:hidden!important}.a2-cover .a2-meta-bar{height:22mm!important;min-height:22mm!important;max-height:22mm!important}.a2-cover .a2-cover-body{height:145mm!important;max-height:145mm!important}.a2-cover .a2-hero-main{isolation:isolate;position:relative!important}.a2-cover .a2-hero-main>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:0!important;object-fit:cover!important}.a2-cover .a2-hero-main:after{z-index:1!important;pointer-events:none}.a2-cover .a2-hero-copy{position:absolute!important;z-index:4!important;display:block!important;visibility:visible!important;opacity:1!important;color:#fff!important;text-shadow:0 1px 4px rgba(0,0,0,.28);max-height:none!important}.a2-cover .a2-hero-copy h1,.a2-cover .a2-hero-copy p,.a2-cover .a2-hero-copy>span{visibility:visible!important;opacity:1!important}.a2-cover .a2-hero-side{display:grid!important;grid-template-rows:minmax(0,1fr) minmax(0,1fr)!important;min-height:0!important;overflow:hidden!important}.a2-cover .a2-hero-side>img{position:relative!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover!important;overflow:hidden!important}
/* T&C: se compactan para ocupar una o dos páginas como máximo. */
.terms-page .a2-page-inner{padding:10mm 13mm 17mm}.terms-page .a2-page-title{margin:1mm 0 3mm;padding-bottom:2.5mm}.terms-page .a2-page-title h1{font-size:17pt;margin-bottom:1mm}.terms-page .a2-page-title p{font-size:6.7pt;line-height:1.28}.terms-page .terms-grid{grid-template-columns:1fr 1fr;gap:1.7mm 2.5mm}.terms-page .terms-card{grid-template-columns:6mm 1fr;gap:1.6mm;padding:1.8mm 2mm;border-radius:2.2mm}.terms-page .terms-card>span{width:5.2mm;height:5.2mm;font-size:5.2pt}.terms-page .terms-card h3{font-size:6.35pt;line-height:1.08;margin:0 0 .55mm}.terms-page .terms-card p{font-size:5.35pt;line-height:1.22}.terms-page .terms-accept-note{margin-top:2mm;padding:2mm 2.4mm}.terms-page .terms-accept-note b{font-size:6.2pt}.terms-page .terms-accept-note p{font-size:5.35pt;line-height:1.2;margin:.5mm 0 0}.terms-page .a2-legal-note{font-size:5.25pt;line-height:1.2;margin-top:1.6mm;padding:1.6mm 2mm}
@media(max-width:700px){.route-point-editor-grid{grid-template-columns:1fr}.route-flow{grid-template-columns:repeat(4,minmax(0,1fr))}.route-node:nth-child(4n):after{display:none}}
@media print{
  .a2-cover .a2-hero-grid{height:71mm!important;max-height:71mm!important;overflow:hidden!important}.a2-cover .a2-meta-bar{height:22mm!important;min-height:22mm!important;max-height:22mm!important}.a2-cover .a2-cover-body{height:145mm!important;max-height:145mm!important}.a2-cover .a2-hero-copy{display:block!important;visibility:visible!important;opacity:1!important;z-index:50!important;max-height:none!important;overflow:visible!important}.a2-cover .a2-hero-main:after{z-index:1!important}.a2-cover .a2-hero-main>img{z-index:0!important}.a2-cover .a2-hero-side>img{height:100%!important;min-height:0!important}.route-visual-thumbs,.route-node,.route-node-image{break-inside:avoid!important;page-break-inside:avoid!important}.terms-page .terms-card{break-inside:avoid!important;page-break-inside:avoid!important}
}
/* =================== END ALPHA 1.15 PRE-WEB =================== */

/* Alpha 1.15 ajuste de cuatro columnas de la franja comercial */
.a2-cover .a2-meta-bar{grid-template-columns:1fr 1fr 1fr 1.35fr!important}


/* ===================== ALPHA 1.16 PRE-WEB FINAL ===================== */
.terms-profile-indicator{margin-top:9px;padding:9px 11px;border-radius:10px;font-size:11px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.terms-profile-indicator small{display:block;width:100%;color:#677482}.terms-profile-indicator.normal{background:#eef8f2;border:1px solid #c8e7d4}.terms-profile-indicator.special{background:#fff5e8;border:1px solid #f0d4ae}
.a2-day-narrative{margin:2.2mm 0 2.6mm;padding:2.4mm 3mm;background:#fbfbfd;border-left:1.2mm solid #7562c8;border-radius:0 2.5mm 2.5mm 0}.a2-day-narrative h4{margin:0 0 1.2mm!important;font-family:Arial,sans-serif!important;font-size:7.5pt!important;letter-spacing:.02em!important;text-transform:none!important;color:#3a2f73!important}.a2-day-narrative p{font-size:6.85pt;line-height:1.34;color:#48566b;margin:0 0 1.4mm}.a2-day-narrative p:last-child{margin-bottom:0}.a2-day-narrative strong{color:#17284b;font-weight:800}.a2-day-summary{font-size:6.6pt!important;line-height:1.3!important;color:#667383!important;margin:1.5mm 0!important}
.route-snake{padding:2mm 2.6mm;margin:2.2mm 0 2.6mm}.route-snake .route-visual-head{margin-bottom:1.6mm}.route-snake-body{display:block;position:relative;height:auto!important;min-height:0!important}.route-snake-line+.route-turn{margin-top:.4mm}.route-turn+.route-snake-line{margin-top:.4mm}.route-snake-line{display:grid;grid-template-columns:repeat(var(--route-count),minmax(0,1fr));align-items:start;column-gap:4.2mm;max-width:100%;position:relative}.route-snake-line.reverse{direction:rtl}.route-snake-line.reverse>*{direction:ltr}.route-snake-node{position:relative;text-align:center;min-width:0;padding:0 1mm}.route-snake-node .route-node-image{width:10.5mm;height:10.5mm;margin:0 auto .75mm;padding:.45mm}.route-snake-node>span{display:block;font-size:5.15pt;line-height:1.08;font-weight:750;color:#38445d;min-height:5.8mm;overflow-wrap:anywhere}.route-arrow{position:absolute;top:3.8mm;right:-4.2mm;color:#7562c8;font-size:8.5pt;font-style:normal;font-weight:800}.route-snake-line.reverse .route-arrow{right:auto;left:-4.2mm}.route-turn{height:4mm;font-size:9pt;line-height:4mm;color:#7562c8;font-weight:900}.route-turn.right{text-align:right;padding-right:5.5mm}.route-turn.left{text-align:left;padding-left:5.5mm}
.itinerary-detail-page .a2-day-detail{margin-bottom:2.5mm}.itinerary-detail-page .a2-day-detail-head{margin-bottom:1.4mm}.itinerary-detail-page .a2-approx{margin:1.8mm 0 2mm}.itinerary-detail-page .a2-inout{margin-top:2mm}
.terms-page .a2-page-inner{padding:8.5mm 12mm 16.5mm}.terms-page .a2-page-title{margin:.6mm 0 2.2mm;padding-bottom:1.9mm}.terms-page .a2-page-title h1{font-size:15.5pt;margin-bottom:.7mm}.terms-page .a2-page-title p{font-size:6.15pt;line-height:1.2}.terms-page .terms-grid{grid-template-columns:1fr 1fr;gap:1.25mm 2mm}.terms-page .terms-card{grid-template-columns:5.4mm 1fr;gap:1.3mm;padding:1.45mm 1.65mm;border-radius:1.8mm}.terms-page .terms-card>span{width:4.7mm;height:4.7mm;font-size:4.7pt}.terms-page .terms-card h3{font-size:5.85pt;line-height:1.04;margin:0 0 .35mm}.terms-page .terms-card p{font-size:5.05pt;line-height:1.15}.terms-page .terms-accept-note{margin-top:1.4mm;padding:1.55mm 2mm}.terms-page .terms-accept-note b{font-size:5.8pt}.terms-page .terms-accept-note p{font-size:5.05pt;line-height:1.14;margin:.35mm 0 0}.terms-page .a2-legal-note{font-size:4.95pt;line-height:1.15;margin-top:1.2mm;padding:1.3mm 1.7mm}
@media(max-width:700px){.route-snake-line{grid-template-columns:repeat(var(--route-count),minmax(78px,1fr));overflow-x:auto}.route-snake-line.reverse{direction:rtl}}
@media print{.route-snake,.route-snake-line,.route-snake-node,.route-snake-node .route-node-image{break-inside:avoid!important;page-break-inside:avoid!important}.a2-day-narrative{break-inside:avoid!important;page-break-inside:avoid!important}}
/* =================== END ALPHA 1.16 PRE-WEB FINAL =================== */


/* ===================== ALPHA 1.17 PRE-WEB CANDIDATE ===================== */
/* Ruta horizontal CSP-safe: no depende de style="--route-count". */
.route-snake-line{display:grid!important;column-gap:4.2mm;align-items:start;max-width:100%;position:relative;width:100%}
.route-snake-line.route-cols-1{grid-template-columns:repeat(1,minmax(0,1fr));width:16.6667%}
.route-snake-line.route-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));width:33.3334%}
.route-snake-line.route-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));width:50%}
.route-snake-line.route-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));width:66.6667%}
.route-snake-line.route-cols-5{grid-template-columns:repeat(5,minmax(0,1fr));width:83.3334%}
.route-snake-line.route-cols-6{grid-template-columns:repeat(6,minmax(0,1fr));width:100%}
.route-snake-line.reverse{direction:rtl;margin-left:auto}.route-snake-line.reverse>*{direction:ltr}.route-snake-line.forward{margin-right:auto}
.route-snake-node{padding:0 .6mm}.route-snake-node .route-node-image{width:11mm;height:11mm}.route-snake-node>span{font-size:5.45pt;line-height:1.12;min-height:5.5mm}.route-arrow{top:4mm}
.route-turn{height:3.3mm;line-height:3.3mm}.route-snake{padding:2mm 2.7mm;margin:2mm 0 2.4mm}
/* Narrativa algo más legible ahora que la ruta ocupa menos altura. */
.a2-day-narrative h4{font-size:8pt!important}.a2-day-narrative p{font-size:7.15pt;line-height:1.36}.a2-day-summary{font-size:6.8pt!important}
/* Editor A2 por jornada de plantillas multiday. */
.template-day-editor{border:1px solid #dcd5f2;background:#fbfaff;border-radius:14px;padding:14px;margin:0 0 16px}.template-day-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:12px}.template-day-editor-head b{display:block;color:var(--navy);font-size:15px}.template-day-editor-head span{display:block;color:var(--muted);font-size:11px;margin-top:3px;max-width:620px}.template-day-editor-head em{font-style:normal;font-size:10px;font-weight:800;padding:5px 8px;border-radius:999px;background:#e9ddff;color:#5e49b4}.template-day-editor-head em.base{background:#edf4f7;color:#526575}.template-day-preview{margin:8px 0 12px}.template-day-editor .large-textarea{min-height:145px}.template-day-thumb-preview{width:100%;max-width:260px;height:110px;border-radius:12px;object-fit:cover;border:1px solid #ded8ef;background:#eef0f5;margin-bottom:8px}.template-day-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
@media(max-width:700px){.route-snake-line.route-cols-1,.route-snake-line.route-cols-2,.route-snake-line.route-cols-3,.route-snake-line.route-cols-4,.route-snake-line.route-cols-5,.route-snake-line.route-cols-6{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.route-snake-line.reverse{direction:ltr}.route-snake-line.reverse .route-arrow{left:auto;right:-4.2mm}.template-day-editor-head{display:block}.template-day-editor-head em{display:inline-block;margin-top:8px}}
@media print{.route-snake-line.route-cols-1,.route-snake-line.route-cols-2,.route-snake-line.route-cols-3,.route-snake-line.route-cols-4,.route-snake-line.route-cols-5,.route-snake-line.route-cols-6{overflow:visible!important}.route-snake{break-inside:avoid!important;page-break-inside:avoid!important}}
/* =================== END ALPHA 1.17 PRE-WEB CANDIDATE =================== */
