.custom-planner{container-type:inline-size;color:#172d50;background:#fffefb}.custom-planner h1,.custom-planner h2,.custom-planner h3{font-weight:350;letter-spacing:-1px;line-height:1.15}.custom-planner .eyebrow{font-size:12px;letter-spacing:2px}.cp-opening{background:#e9e7df;display:grid;grid-template-columns:1.4fr 1fr;gap:8%;padding:58px max(6%,calc((100% - 1440px)/2))}.cp-opening h1{font-size:clamp(40px,4.8vw,68px);margin:20px 0 24px}.cp-opening p:not(.eyebrow){max-width:490px;font-size:17px;line-height:1.8;color:#526984}.cp-opening-aside{align-self:center;border-left:1px solid #b8c2ca;padding-left:50px}.cp-opening-aside>.icon{height:54px;width:54px;color:#354b91;margin-bottom:15px}.cp-opening-aside ol{padding-left:20px;line-height:2.6;font-size:16px}.cp-opening-aside a{display:flex;gap:16px;align-items:center;text-decoration:none;font-size:14px;margin-top:20px}.cp-content{max-width:1440px;padding:45px 6% 0;margin:auto}.cp-discovery{padding-bottom:32px;border-bottom:1px solid #d4ddea}.cp-discovery-title{display:flex;align-items:center;justify-content:space-between;gap:20px}.cp-discovery-title h2{font-size:31px;margin:0 0 23px}.cp-discovery-title>button{display:flex;gap:15px;align-items:center;border:1px solid #d4ddea;padding:9px 12px;font-size:14px}#cp-destination-form{display:flex;border:1px solid #b3c0d5;background:#fff;padding:7px;gap:10px}#cp-destination-form label{display:flex;align-items:center;gap:16px;padding-left:14px;flex:1;min-width:0}#cp-destination{font:inherit;border:0;padding:12px 0;width:100%;font-size:17px;min-width:0;color:#172d50}#cp-destination-form .btn{font-size:13px;padding:13px 20px}.cp-country-results{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.cp-country-results button{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid #ccd7e5;font-size:14px}.cp-city-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px}.cp-city-results button{display:flex;align-items:center;gap:10px;justify-content:space-between;text-align:left;border:1px solid #d4ddea;padding:14px;transition:background .16s,border-color .16s}.cp-city-results button:hover{background:#edf2f9;border-color:#8298bc}.cp-city-results button>span{display:grid;grid-template-columns:20px 1fr;gap:0 8px}.cp-city-results button>span .icon{grid-row:1/3;align-self:center}.cp-city-results b{font-size:14px;font-weight:500}.cp-city-results small{grid-column:2;font-size:12px;color:#61738c}.custom-planner button:disabled{opacity:.45;cursor:default}.cp-hint,#cp-search-status{font-size:14px;color:#526984}#cp-google-results:empty{display:none}#cp-google-results{max-width:800px;margin-top:20px;max-height:450px;overflow-y:auto}.custom-planner gmp-place-search,.custom-planner gmp-place-details-compact,#dialog gmp-place-search{color-scheme:light;--gmp-mat-font-family:Brand,Arial,sans-serif}
.cp-route{padding:35px 0}.cp-route-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:24px}.cp-route-heading h2{font-size:31px;margin:10px 0 0}.cp-route-heading>span{font-size:14px;color:#526984}.cp-route-stops{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.cp-route-stop{min-width:240px;max-width:330px;flex:1;border:1px solid #d4ddea;background:white}.cp-route-stop.active{border-color:#354b91;border-top-width:3px}.cp-route-stop>button{padding:20px 18px 15px;display:flex;flex-direction:column;align-items:start;width:100%;text-align:left;gap:5px}.cp-route-stop>button>small{font-size:11px;letter-spacing:.6px;text-transform:uppercase}.cp-route-stop>button>b{font-size:23px;font-weight:400}.cp-route-stop>button>span{font-size:13px;color:#61738c}.cp-route-controls{display:flex;align-items:center;border-top:1px solid #e1e6ee;padding:10px;gap:5px}.cp-route-controls label{display:flex;align-items:center;gap:9px;font-size:12px;flex:1}.cp-route-controls input{width:50px;font-size:15px;padding:7px;border:1px solid #cbd5e4;color:#172d50;background:white}.cp-route-controls>button{width:32px;height:38px;padding:7px}.cp-route-note{display:flex;gap:12px;font-size:13px;color:#526984;margin-top:18px;align-items:center}.cp-route-note .icon{flex:none}
.cp-workspace{display:grid;grid-template-columns:1.35fr 1fr;gap:34px;border-top:1px solid #d4ddea;padding:35px 0 45px}.cp-day-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.cp-day-heading h2{font-size:34px;margin:10px 0}.cp-day-heading .eyebrow{margin:0}.cp-day-controls{display:flex;align-items:center;border:1px solid #c7d3e5}.cp-day-controls>button{padding:10px;display:flex}.cp-day-controls .icon{width:17px}.cp-day-controls select{background:white;border:0;font-size:15px;color:#172d50;padding:10px 8px}.cp-day-intro{font-size:15px;color:#526984;line-height:1.8;margin-bottom:24px}.cp-activities article{display:flex;align-items:start;gap:9px;border:1px solid #d4ddea;background:white;padding:18px;margin-bottom:12px}.cp-activities article>div{flex:1;min-width:0}.cp-activities h3{font-size:20px;margin:0 0 12px}.cp-activities p{font-size:14px}.cp-activities small{color:#61738c;font-size:12px}.cp-activities article>button{padding:5px;flex:none}.cp-activities gmp-place-details-compact{width:100%;border:0}.cp-add-experience{display:flex;width:100%;align-items:center;justify-content:center;gap:12px;border:1px solid #a7b8d3;padding:17px;font-size:15px;background:#eef2f8;color:#243d68}.cp-map-aside{align-self:start;position:sticky;top:90px}.cp-map-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0 16px}.cp-map-title span{font-size:12px;letter-spacing:2px}.cp-map-title button{font-size:13px}.cp-map-title [data-cp-map-toggle]{display:none}#cp-map,.cp-map-canvas{height:365px;width:100%;background:#edf2f7}.cp-map-aside>p{font-size:12px;color:#61738c;line-height:1.7}.cp-finish{width:100cqw;margin:0 0 0 calc(50% - 50cqw);padding:45px max(6%,calc((100vw - 1268px)/2));display:flex;justify-content:space-between;gap:35px;background:#172d50;color:white}.cp-finish h2{font-size:38px;margin:13px 0}.cp-finish p{font-size:15px;max-width:430px;color:#d6e1f0}.cp-finish>div:last-child{align-self:center;display:flex;flex-direction:column;gap:16px}.cp-finish .btn{background:white;color:#172d50}.cp-finish .text-link{color:#d6e1f0;justify-content:center}.cp-empty{padding:55px 0 70px;max-width:680px}.cp-empty h2{font-size:38px;margin:15px 0}.cp-empty p:last-child{font-size:16px;color:#526984;line-height:1.8}.cp-review section{border-top:1px solid #d4ddea;margin-top:25px;padding-top:20px}.cp-review-day{display:grid;grid-template-columns:65px 1fr;gap:12px;margin:15px 0;font-size:14px}.cp-review-day p{margin:0 0 10px}.cp-activity-dialog input,.cp-activity-dialog select,.cp-activity-dialog textarea{font:inherit;width:100%;padding:12px;border:1px solid #cbd5e4;background:#fafbfe;color:#172d50}.cp-activity-dialog label{display:flex;flex-direction:column;gap:8px;font-size:14px;margin:15px 0}.cp-activity-dialog .form-row{gap:18px}.cp-activity-dialog .form-row>label{flex:1;min-width:0}#cp-experience-search label{display:flex;flex-direction:column;font-size:14px;gap:8px;margin:18px 0}#cp-experience-search input{padding:13px;font-size:16px;width:100%;border:1px solid #cbd5e4}#cp-experience-results{margin:20px 0;max-height:430px;overflow:auto}#cp-own-idea{margin-top:20px}
@media(max-width:1000px){.cp-city-results{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-workspace{gap:20px;grid-template-columns:1fr 1fr}.cp-opening-aside{padding-left:25px}.cp-day-heading{flex-wrap:wrap}.cp-content{padding-left:5%;padding-right:5%}}
@media(max-width:700px){.cp-opening{grid-template-columns:1fr;gap:20px;padding:36px 6%}.cp-opening h1{font-size:42px}.cp-opening-aside{border-left:0;border-top:1px solid #c7cdcf;padding:20px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.cp-opening-aside>.icon{width:35px;height:35px;margin:0}.cp-opening-aside ol{font-size:13px;line-height:1.8;margin:0}.cp-opening-aside a{width:100%;margin:8px 0 0}.cp-content{padding-top:28px}.cp-discovery-title h2{font-size:26px}#cp-destination-form{flex-wrap:wrap}#cp-destination-form label{width:100%;flex:auto}#cp-destination-form .btn{width:100%;justify-content:center}.cp-city-results button{padding:12px 10px}.cp-city-results b{font-size:13px}.cp-city-results small{font-size:11px}.cp-route-heading{display:block}.cp-route-heading h2{font-size:27px;margin-bottom:15px}.cp-route-stop{min-width:235px}.cp-workspace{display:flex;flex-direction:column;gap:25px;padding-top:25px}.cp-map-aside{position:static;width:100%;order:-1}.cp-map-title [data-cp-map-toggle]{display:block}#cp-map{display:none}#cp-map.mobile-open{display:block}#cp-map,.cp-map-canvas{height:280px}.cp-map-aside>p{display:none}.cp-finish{display:block;padding:32px 6%}.cp-finish>div:last-child{margin-top:25px}.cp-empty h2{font-size:31px}.cp-activities article{padding:13px}.cp-activities article>button{padding:3px}.cp-day-heading h2{font-size:30px}.cp-activity-dialog .form-row{display:flex}.cp-activity-dialog select{font-size:16px}}

.cp-workspace>*{min-width:0}.cp-workspace{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}

/* A compact editorial origin, separate from the customer's working route. */
.cp-curated-origin{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 36px;margin-bottom:32px;padding:24px 28px;border:1px solid #d4ddea;background:#f2f5fa;color:#172d50}
.cp-curated-origin h2{font-family:Brand,Arial,sans-serif;font-size:30px;line-height:1.2;margin:8px 0}
.cp-curated-origin h2 span{display:block;font-family:Brand,Arial,sans-serif;font-size:16px;line-height:1.6;margin-top:8px;color:#526984}
.cp-curated-origin details{align-self:start;min-width:0;padding-top:8px;font-size:14px;line-height:1.75}
.cp-curated-origin summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;cursor:pointer;border-bottom:1px solid #c7d3e5;list-style:none}
.cp-curated-origin summary::-webkit-details-marker{display:none}
.cp-curated-origin summary .icon{width:16px;height:16px;flex:none;transition:transform .18s ease}
.cp-curated-origin details[open] summary .icon{transform:rotate(180deg)}
.cp-curated-origin details p{margin:14px 0;overflow-wrap:anywhere}
.cp-curated-origin .cp-origin-note{margin:0;color:#526984;line-height:1.65;font-size:14px}
.cp-curated-origin>.text-link{justify-self:end;align-self:center;min-height:44px;gap:12px;font-size:14px}
.cp-stop-inspiration{border-left:2px solid #b4c2d8;padding:2px 0 2px 16px;margin:0 0 22px}
.cp-stop-inspiration .eyebrow{font-size:10px;margin:0 0 8px}
.cp-stop-inspiration>p:last-child{margin:0;font-size:15px;line-height:1.7;color:#354867}
.cp-draft-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0;padding-block:20px;border-block:1px solid #d4ddea}
.cp-draft-comparison h3{font-family:Brand,Arial,sans-serif;font-size:14px;font-weight:500;margin:0 0 12px;color:#526984}
.cp-draft-comparison p{font-size:18px;line-height:1.5;margin:0 0 10px;overflow-wrap:anywhere}
.cp-draft-comparison small{color:#526984;font-size:13px}
.cp-curated-confirm>p{font-size:15px;line-height:1.75}
.cp-curated-confirm .dialog-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}
.cp-curated-confirm .dialog-actions button{min-height:44px;white-space:normal;text-align:left;line-height:1.6}
.cp-review-origin,.cp-review-introduction{color:#526984;font-size:14px;line-height:1.7}
@media(max-width:700px){.cp-curated-origin{grid-template-columns:1fr;padding:20px;gap:12px}.cp-curated-origin>.text-link{justify-self:start}.cp-draft-comparison{grid-template-columns:1fr;gap:20px}.cp-curated-confirm .dialog-actions{align-items:stretch;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.cp-curated-origin summary .icon{transition:none}}
/* Planner integrity controls share the existing blue palette and page gutters. */
.cp-history{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px var(--planner-gutter,6%);background:#f2f5fa;border-bottom:1px solid #d4ddea;font-size:14px}
.cp-history p{margin:0;min-width:0;overflow-wrap:anywhere;color:#354867}
.cp-history button{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:44px;padding:8px 14px;border:1px solid #b4c2d8;color:#172d50;background:white}
.cp-history button:hover{border-color:#354b91;background:#e8eef8}
.cp-history .icon{width:17px;height:17px}
.cp-night-confirm>p{max-width:62ch;line-height:1.75}
.cp-affected-experiences{list-style:none;padding:0;margin:24px 0;max-height:280px;overflow:auto;border-block:1px solid #d4ddea}
.cp-affected-experiences li{display:grid;grid-template-columns:65px minmax(0,1fr);gap:6px 16px;padding:16px 4px;border-bottom:1px solid #e1e6ee}
.cp-affected-experiences li:last-child{border:0}
.cp-affected-experiences li>span{grid-row:1/3;color:#526984;font-size:13px}
.cp-affected-experiences b{font-weight:500;font-size:16px;overflow-wrap:anywhere}
.cp-affected-experiences small{grid-column:2;color:#526984;font-size:13px}
.cp-affected-experiences [data-cp-place-card]{min-width:0}
.cp-night-confirm .dialog-actions{align-items:center;gap:16px;flex-wrap:wrap}
.cp-night-confirm .dialog-actions button{white-space:normal;text-align:left;line-height:1.5}
/* Custom editing follows the existing route handles, without restyling other planners. */
.custom-planner .cp-route-controls{gap:4px}
.custom-planner .cp-route-controls label{flex:none;gap:8px;margin-inline-end:auto}
.custom-planner .cp-route-controls select{width:72px}
.custom-planner .cp-route-controls>button{width:44px;height:44px;padding:10px;display:grid;place-items:center;flex:none}
.custom-planner .cp-route-controls>button:hover{background:#eef2f8;color:#354b91}
.custom-planner .cp-route-stop [data-cp-stop]>b,.custom-planner .cp-route-stop [data-cp-stop]>span{overflow-wrap:anywhere}
.custom-planner .cp-day-heading>div:first-child{min-width:0}
.custom-planner .cp-day-heading .eyebrow{overflow-wrap:anywhere}
.cp-review-stop-heading>div{min-width:0}
.cp-review-stop-heading h3,.cp-review-stop-heading span,.cp-request-layout aside li{overflow-wrap:anywhere}
.custom-planner .cp-activities article{position:relative}
.custom-planner .cp-activities .cp-activity-actions{align-items:center;gap:6px;padding:4px 10px}
.custom-planner .cp-activity-actions>button{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;padding:10px}
.custom-planner .cp-activity-actions>.cp-activity-grip{margin-inline-end:auto;gap:7px;font-size:12px;color:#526984;touch-action:none;cursor:grab;user-select:none}
.custom-planner .cp-activity-grip:active{cursor:grabbing}
.custom-planner .cp-activity-grip:disabled{cursor:default}
.custom-planner .cp-activity-actions>button:hover:not(:disabled){background:#eef2f8;color:#354b91}
.custom-planner .cp-activities article.cp-is-dragging{opacity:.65;border-color:#354b91}
.custom-planner .cp-activities article.cp-drop-before:before,.custom-planner .cp-activities article.cp-drop-after:after{content:"";position:absolute;inset-inline:0;height:2px;background:#354b91;pointer-events:none}
.custom-planner .cp-activities article.cp-drop-before:before{top:-7px}
.custom-planner .cp-activities article.cp-drop-after:after{bottom:-7px}
.cp-stop-name-dialog .cp-stop-location{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#526984;margin:20px 0;overflow-wrap:anywhere}
.cp-stop-name-dialog .cp-stop-location .icon{flex:none;width:18px;height:18px}
.cp-stop-name-dialog [data-cp-place-card]{margin-bottom:20px}
.cp-stop-name-dialog form>label{display:block;font-size:14px;margin:22px 0 9px}
.cp-stop-name-dialog input{width:100%;padding:13px;font:inherit;font-size:16px;color:#172d50;border:1px solid #c7d3e5;background:#fafbfe}
.cp-stop-name-dialog #cp-stop-name-help{font-size:14px;line-height:1.7;margin:12px 0 18px;color:#526984}
.cp-stop-name-dialog .dialog-actions{margin-top:26px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.cp-stop-name-dialog .text-link{min-height:44px}
@media(max-width:700px){.cp-history{gap:12px;font-size:13px}.cp-history button{padding:8px 10px}.cp-affected-experiences li{grid-template-columns:55px minmax(0,1fr);gap:6px 10px}.cp-night-confirm .dialog-actions{align-items:stretch;flex-direction:column}.cp-night-confirm .dialog-actions button{justify-content:center;text-align:center}}

/* Batch 5: compact geographic confirmation and explicit map selection. */
.cp-stop-name-dialog #cp-stop-form .form-row { margin: 20px 0; gap: 18px; }
.cp-stop-name-dialog #cp-stop-form select { width: 100%; min-height: 48px; }
.cp-activity-dialog #cp-place-name-help { display: block; margin: -8px 0 18px; color: var(--muted,#526680); line-height: 1.5; }
.cp-activities article.cp-place-focused { border-color: #354b91; box-shadow: inset 3px 0 #354b91; }
.cp-country-extension .dialog-actions { flex-wrap: wrap; }
@media(max-width:600px){ .cp-stop-name-dialog #cp-stop-form .form-row { grid-template-columns:1fr; } }
.cp-activity-form .cp-experience-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:18px}
.cp-experience-form-actions .cp-cancel-edit{min-height:44px;display:inline-flex;align-items:center;padding:8px 0}
.cp-activity-dialog select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%23172d50' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 13px center;background-size:14px;background-repeat:no-repeat;padding-right:40px}
.cp-activity-dialog .cp-timing-row select{padding-left:12px;padding-right:40px}
@media(max-width:560px){.cp-activity-dialog .cp-activity-form .cp-timing-row{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-activity-dialog .cp-timing-row>label:last-child{grid-column:1/-1}}
@media(max-width:360px){.cp-activity-dialog .cp-activity-form .cp-timing-row{grid-template-columns:1fr}}
