.route-guide-widget{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px) 200px;align-items:center;gap:22px;padding:22px 24px;margin:20px 0 30px;border:1px solid #e4c8b7;border-radius:20px;background:#fcf0e6;color:#3d2c21}
.route-guide-widget-text{min-width:0}.route-guide-widget h2{font-size:26px;line-height:1.2;margin:0 0 12px}.route-guide-widget p{margin:0 0 10px}.route-guide-widget small{display:block;color:#766d66}.route-guide-widget .route-guide-qr{display:block;width:200px;height:200px;background:white;border-radius:8px;flex:none}.route-guide-widget button.primary{margin-top:16px}
.route-guide-map-thumb{display:block;position:relative;overflow:hidden;width:100%;padding:0!important;background:white!important;border:1px solid #ddc3b4!important;border-radius:14px!important;cursor:zoom-in;min-height:160px}.route-guide-map-thumb img{display:block;width:100%;height:auto;max-height:210px;object-fit:contain}.route-guide-map-thumb span{display:block;padding:7px 8px;background:#fffaf5;color:#663825;font-size:13px;text-align:center;font-weight:700}
.tic-route-map-open{overflow:hidden}dialog.tic-route-map-dialog{box-sizing:border-box;width:min(1200px,96vw);max-width:96vw;height:min(94dvh,950px);max-height:94dvh;margin:auto;padding:14px;background:#fffdfa;color:#3d2c21;border:0;border-radius:16px;box-shadow:0 20px 80px #0006}dialog.tic-route-map-dialog::backdrop{background:#1f1711c9}.tic-route-map-dialog .tic-route-map-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:10px}.tic-route-map-dialog .tic-route-map-toolbar strong{flex:1;font-size:20px}.tic-route-map-dialog .tic-route-map-toolbar button{min-width:48px;min-height:48px;padding:8px 12px;border:1px solid #ddc3b4;border-radius:10px;background:white;color:#3d2c21;font:inherit;cursor:pointer}.tic-route-map-dialog .tic-route-map-toolbar button:disabled{opacity:.4}.tic-route-map-dialog .tic-route-map-viewport{height:calc(100% - 112px);width:100%;overflow:auto;overscroll-behavior:contain;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;border-radius:10px;background:#eee9df}.tic-route-map-dialog .tic-route-map-viewport:active{cursor:grabbing}.tic-route-map-dialog .tic-route-map-viewport img{width:100%;max-width:none;height:auto;display:block;pointer-events:none;-webkit-user-drag:none}.tic-route-map-dialog p{font-size:14px;margin:10px 0;text-align:center;color:#766d66}
.mobile-app .route-guide-widget{display:flex;padding:20px 16px;margin:16px 0;gap:16px}.mobile-app .route-guide-widget h2{font-size:22px}.mobile-app .route-guide-widget p{font-size:16px}.mobile-app .route-guide-widget button.primary{width:100%;font-size:16px;min-height:44px;padding:12px}.mobile-app .route-guide-widget small{font-size:13px}
@media(max-width:1000px){.route-guide-widget{grid-template-columns:minmax(0,1fr) 230px;gap:16px}.route-guide-widget .route-guide-qr{grid-column:2;justify-self:center}.route-guide-map-thumb{grid-column:2;grid-row:1}}
@media(max-width:700px){.route-guide-widget{grid-template-columns:1fr}.route-guide-widget .route-guide-qr,.route-guide-map-thumb{grid-column:1;grid-row:auto;justify-self:center}.route-guide-widget h2{font-size:23px}dialog.tic-route-map-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;padding:10px}.tic-route-map-dialog .tic-route-map-toolbar strong{font-size:16px}.tic-route-map-dialog .tic-route-map-toolbar button{padding:8px;min-width:44px}}

/* v1.11.3: the entire card sits beside the description, not above the gallery. */
.route-description{display:flow-root}.route-description .route-guide-widget{float:right;width:390px;max-width:42%;margin:0 0 24px 28px;padding:20px;grid-template-columns:minmax(0,1fr) 144px;gap:14px;align-items:center}
.route-description .route-guide-widget-text{grid-column:1/-1}.route-description .route-guide-widget h2{font-size:24px;margin:0 0 10px}.route-description .route-guide-widget p{font-size:17px;line-height:1.45;text-align:left;margin:0 0 8px}.route-description .route-guide-widget small{font-size:14px;line-height:1.4}.route-description .route-guide-qr{grid-column:2;grid-row:2;width:144px;height:144px;justify-self:center}.route-description .route-guide-map-thumb{grid-column:1;grid-row:2;min-height:120px}.route-description .route-guide-map-thumb img{height:112px;width:100%;object-fit:contain}.route-description .route-guide-map-thumb span{font-size:12px;padding:6px}.route-description .guide-schema-note{grid-column:1/-1}.route-map-sources{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.route-map-sources button{border:1px solid #ddc3b4;border-radius:8px;background:#fffdfa;color:#663825;min-height:44px;padding:8px 14px;font:inherit;cursor:pointer}.tic-route-map-dialog .tic-route-map-viewport{height:calc(100% - 165px)}
.mobile-app .route-description .route-guide-widget{float:none;width:auto;max-width:none;margin:0 0 20px;display:block}.mobile-app .route-description .route-guide-widget h2{font-size:22px}
@media(max-width:899px){.route-description .route-guide-widget{float:none;width:auto;max-width:none;margin:0 0 24px;grid-template-columns:1fr 160px}.route-description .route-guide-widget-text{grid-column:1}.route-description .route-guide-map-thumb{grid-column:1;grid-row:2}.route-description .route-guide-qr{grid-column:2;grid-row:1/span 2;width:160px;height:160px}.route-description .guide-schema-note{grid-column:1/-1}}
@media(max-width:480px){.route-description .route-guide-widget{grid-template-columns:1fr}.route-description .route-guide-widget-text,.route-description .route-guide-map-thumb,.route-description .route-guide-qr{grid-column:1;grid-row:auto}.route-description .route-guide-map-thumb{max-width:260px}.route-description .route-guide-qr{width:180px;height:180px}}
