/* Shared by the four native blog planner widgets. Colors belong to each instance. */
.tk-blog .tkb-planner-host{container-type:inline-size;min-width:0}
.tk-blog .tkb-planner{display:grid;background:var(--tp-bg);color:var(--tp-title);border:1px solid #dce6ed;border-radius:24px;overflow:hidden;font-family:inherit;line-height:1.65;isolation:isolate}
.tk-blog .tkb-planner *{box-sizing:border-box}
.tk-blog .tp-wide{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:360px}
.tk-blog .tp-side{grid-template-columns:minmax(0,1fr);border-radius:20px}
.tk-blog .tp-copy{padding:40px;align-self:center;min-width:0}
.tk-blog .tp-side .tp-copy{padding:23px}
.tk-blog .tp-label{display:block;text-transform:uppercase;letter-spacing:1.5px;color:var(--tp-label);font-size:10px;font-weight:700;margin:0 0 13px}
.tk-blog .tkb-planner h2{font-family:inherit;font-size:36px;line-height:1.2;font-weight:600;letter-spacing:-.8px;color:var(--tp-title);margin:0;overflow-wrap:anywhere}
.tk-blog .tp-side h2{font-size:30px}
.tk-blog .tkb-planner .tp-copy>p{font-size:14px;line-height:1.85;color:var(--tp-text);margin:18px 0 23px;white-space:pre-line}
.tk-blog .tp-side .tp-copy>p{font-size:12px;margin:15px 0 21px}
.tk-blog .tp-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 20px;min-height:46px;border:0;border-radius:12px;background:var(--tp-button);color:var(--tp-button-text);font-family:inherit;font-size:12px;font-weight:600;line-height:1.5;text-decoration:none;transition:background .2s,color .2s;max-width:100%;text-align:center}
.tk-blog .tp-button:hover,.tk-blog .tp-button:focus-visible{background:var(--tp-hover);color:var(--tp-hover-text);text-decoration:none}
.tk-blog .tp-button:focus-visible{outline:2px solid var(--tp-route);outline-offset:4px}
.tk-blog .tp-side .tp-button{display:flex;width:100%;padding-inline:12px}
.tk-blog .tkb-planner svg{display:block;flex-shrink:0}
.tk-blog .tp-button svg{width:20px;height:20px}
.tk-blog .tp-features{display:flex;gap:17px;flex-wrap:wrap;margin-top:24px;font-size:10px;color:var(--tp-text)}
.tk-blog .tp-features span{display:flex;align-items:center;gap:6px}
.tk-blog .tp-features svg{width:15px;height:15px;color:var(--tp-route)}
.tk-blog .tp-side .tp-features{gap:8px;justify-content:space-between;margin-top:19px;padding-top:17px;border-top:1px solid color-mix(in srgb,var(--tp-text) 20%,transparent);font-size:9px}
.tk-blog .tp-p02 .tp-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 25px}
.tk-blog .tp-p02 .tp-features span{display:block}
.tk-blog .tp-p02 .tp-features svg{width:24px;height:24px;margin-bottom:7px}
.tk-blog .tp-art{position:relative;min-height:340px;overflow:hidden;background:var(--tp-art)}
.tk-blog .tp-art>svg{position:absolute;inset:0;width:100%;height:100%}
.tk-blog .tp-side .tp-art{height:155px;min-height:0}
.tk-blog .tp-side .contour{stroke:var(--tp-text);opacity:.25}
.tk-blog .tp-side .trail{stroke:var(--tp-route)}
.tk-blog .tp-side .marker{fill:var(--tp-route)}
.tk-blog .tp-side .symbol{fill:var(--tp-art)}
.tk-blog .tp-side .finish{stroke:var(--tp-art)}
.tk-blog .tp-tag{position:absolute;bottom:35px;right:25px;left:35px;background:var(--tp-card);color:var(--tp-card-text);border:1px solid color-mix(in srgb,var(--tp-text) 25%,transparent);padding:17px 22px;border-radius:14px;transform:rotate(-3deg)}
.tk-blog .tp-tag small{display:block;color:var(--tp-card-text);font-size:9px;letter-spacing:1.4px;text-transform:uppercase;font-weight:700}
.tk-blog .tp-tag strong{display:block;font-size:22px;line-height:1.3;margin:5px 0}
.tk-blog .tp-tag span{font-size:10px;color:var(--tp-card-text)}
.tk-blog .tp-map-label{position:absolute;top:22px;left:22px;right:22px;width:fit-content;background:var(--tp-card);color:var(--tp-card-text);padding:7px 12px;border-radius:20px;font-size:10px}
.tk-blog .tp-profile{position:absolute;left:24px;right:24px;bottom:24px;background:var(--tp-card);color:var(--tp-route);padding:16px;border-radius:14px}
.tk-blog .tp-profile>div{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--tp-card-text)}
.tk-blog .tp-profile svg{width:100%;height:52px;margin-top:5px}
@container(max-width:620px){.tk-blog .tp-wide{grid-template-columns:minmax(0,1fr)}.tk-blog .tp-wide .tp-copy{padding:28px}.tk-blog .tp-wide h2{font-size:30px}.tk-blog .tp-p01 .tp-art{min-height:260px}.tk-blog .tp-p02 .tp-art{min-height:310px}}
@media(max-width:620px){.tk-blog .tp-wide{grid-template-columns:minmax(0,1fr)}.tk-blog .tp-wide .tp-copy{padding:28px}.tk-blog .tp-wide h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.tk-blog .tp-button{transition:none}}
/* R01/R02: compact tour recommendations; same instance color controls. */
.tk-blog .tkb-random-list{display:flex;flex-direction:column;gap:0;margin:0 0 22px}
.tk-blog .tkb-random-tour{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid color-mix(in srgb,var(--tp-text) 22%,transparent);text-decoration:none;color:var(--tp-title)}
.tk-blog .tkb-random-tour:first-child{padding-top:0}
.tk-blog .tkb-random-tour:hover{color:var(--tp-label);text-decoration:none}
.tk-blog .tkb-random-tour img,.tk-blog .tkb-random-placeholder{width:68px;height:68px;flex:0 0 68px;object-fit:cover;border-radius:12px}
.tk-blog .tkb-random-placeholder{display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--tp-text) 12%,transparent);color:var(--tp-label)}
.tk-blog .tkb-random-placeholder svg{width:26px;height:26px}
.tk-blog .tkb-random-copy{min-width:0}
.tk-blog .tkb-random-copy strong{display:block;font-size:13px;font-weight:600;line-height:1.5;overflow-wrap:anywhere;color:inherit}
.tk-blog .tkb-random-copy small{display:block;font-size:10px;line-height:1.6;margin-top:5px;color:var(--tp-text)}
.tk-blog .tkb-random-tours .tkb-random-empty{color:var(--tp-text);font-size:13px}
