/* One shared visual vocabulary, backed by existing native actions. */
#imo-visual-home-v57{flex:0 0 auto;padding:10px 12px 7px;border-bottom:1px solid #35486c;background:linear-gradient(135deg,#162c5b,#101d38);color:#f0f5ff;min-width:0;box-sizing:border-box}
.v57-home-heading{display:flex;gap:10px;align-items:baseline;justify-content:space-between;margin-bottom:8px}
.v57-home-heading h2{font:650 17px/1.3 system-ui;margin:0}.v57-home-heading small{font:11px/1.3 system-ui;color:#b2c5e4}
.v57-pictures{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;padding:2px 0 5px;min-width:0;touch-action:pan-x pan-y pinch-zoom}
#imo-visual-home-v57 .v57-picture,.j33 .v57-picture{flex:0 0 clamp(110px,30%,170px);padding:0;min-width:0;border:1px solid #6b88b7;border-radius:13px;background:#122341;color:#fff;overflow:hidden;text-align:left;scroll-snap-align:start;cursor:pointer;font:600 13px/1.3 system-ui;box-shadow:none}
.v57-picture img{display:block;width:100%;height:104px;object-fit:cover;object-position:center 42%}.v57-picture span{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:33px;padding:5px 9px}.v57-picture b{color:#f4d079;font-weight:400}
.v57-picture:focus-visible{outline:3px solid #f4d079;outline-offset:2px}.v57-picture:disabled{opacity:.6}
.v57-credit{font:10px/1.25 system-ui;color:#acbdda;margin:2px 0 5px}.v57-status{font:12px/1.4 system-ui;margin:4px 0}.v57-status:empty{display:none}
.v57-shortcuts{display:flex;align-items:center;gap:6px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;min-height:44px;white-space:nowrap;touch-action:pan-x pan-y pinch-zoom}
html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app #chat .v57-shortcuts :is(#imo-journey-entry-r34,#imo-together-entry-r29,#op-entry-v44>button){position:static!important;inset:auto!important;transform:none!important;display:flex!important;align-items:center;gap:5px;flex:0 0 auto!important;width:auto!important;min-width:44px!important;max-width:none!important;min-height:40px!important;height:40px!important;margin:0!important;padding:6px 11px!important;border:1px solid #52698f!important;border-radius:11px!important;background:#223957!important;color:#eef5ff!important;font:600 12px/1.3 system-ui!important;white-space:nowrap!important}
html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app #chat #imo-journey-entry-r34{background:#efce7e!important;border-color:#efce7e!important;color:#14213c!important}
html[data-imo-visual="57"] body #bpLayout #app #chat .v57-shortcuts #op-entry-v44{display:contents!important}
html[data-imo-visual="57"] body #bpLayout #app #chat .v57-shortcuts #op-entry-v44>button[data-kind=community]{display:none!important}
html[data-imo-visual="57"] body #bpLayout #app #chat .v57-shortcuts :is(svg,img){width:20px!important;height:20px!important;flex:0 0 auto;object-fit:contain}
html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) #feed{flex:1 1 0!important;height:auto!important;min-height:0!important;padding:10px 12px!important;touch-action:pan-x pan-y pinch-zoom!important}
html[data-imo-visual="57"] body #bpLayout #app #feed #bpWelcome{display:none!important}
html[data-imo-visual="57"] body.journey33-open #bpLayout #app #imo-visual-home-v57{display:none!important}
/* Conditions are visible together; only their editor opens in a dialog. */
#j33-guide .v57-conditions{display:flex;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;padding:2px 0 8px;scrollbar-width:thin;touch-action:pan-x pan-y pinch-zoom}
#j33-guide .v57-conditions button{flex:0 0 auto;min-height:44px;max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;padding:7px 12px;background:#1b355c;border-color:#526e95;font-size:12px}
#j33-guide .v57-conditions .j33-origin-row{display:contents;margin:0}#j33-guide .v57-conditions .j33-origin-row button{flex:0 0 auto;max-width:230px}
#j33-guide .v57-guide-title{font-size:13px;margin:0 0 6px;color:#c2d1ed}.v57-guide-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:4px 0}
#j33-guide .v57-guide-actions button{min-height:40px;font-size:12px}
#j33-guide .v57-guide-actions p{margin:0;font-size:12px;color:#c2d1ed}
#j33-plan .v57-days{display:flex;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;padding:4px 0 10px;margin:6px 0;scrollbar-width:thin;touch-action:pan-x pan-y pinch-zoom}
#j33-plan .v57-days button{flex:0 0 auto;min-height:44px;white-space:nowrap;font-size:12px;padding:7px 13px}
#j33-plan .v57-days button[aria-pressed=true]{background:#efce7e;border-color:#efce7e;color:#152544}
#j33-plan .v57-plan-actions{display:flex;overflow-x:auto;gap:7px;scrollbar-width:thin;margin:8px 0}
#j33-plan .v57-plan-actions button{flex:0 0 auto;font-size:12px;white-space:nowrap;min-height:44px}
#j33-plan .j33-items{display:block;overflow:visible;padding:0;touch-action:pan-x pan-y pinch-zoom}#j33-plan .j33-place{margin:10px 0;width:100%;display:grid;grid-template-columns:100px minmax(0,1fr)}#j33-plan .j33-place>img{width:100%;height:100%;min-height:145px;object-fit:cover}#j33-plan .j33-place:not(:has(>img)){display:block}#j33-plan .j33-place-body{padding:10px}#j33-plan .j33-place-body h3{font-size:16px;margin:2px 0}#j33-plan .j33-place-body .j33-buttons{gap:7px;margin-bottom:0}#j33-plan .j33-place-body p{font-size:12px;margin:4px 0}#j33-plan .j33-empty{padding:18px 12px;margin:10px 0}
#j33-plan .v57-budget-line{font-size:12px;color:#afc1df;margin:8px 0}
@media(max-width:760px){
 /* A single horizontal native action bar replaces the narrow vertical rail. */
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat){grid-template-columns:minmax(0,1fr)!important;grid-template-rows:44px minmax(0,1fr) auto calc(52px + env(safe-area-inset-bottom,0px))!important}
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) #chat{grid-column:1/-1!important;grid-row:2!important}
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) #composer{grid-column:1/-1!important;grid-row:3!important;margin:3px 6px!important;width:calc(100% - 12px)!important}
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) :is(#rightRail,.r26-rail-control,.r26-nav-handle){display:none!important}
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) .bp-action-dock{display:grid!important;visibility:visible!important;grid-column:1/-1!important;grid-row:4!important;grid-template-columns:18px minmax(0,1fr) 18px!important;min-height:0!important;height:100%!important;padding:2px 3px calc(2px + env(safe-area-inset-bottom,0px))!important;pointer-events:auto!important}
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) #bottomNav{display:flex!important;visibility:visible!important;pointer-events:auto!important;min-width:0!important;min-height:0!important;height:46px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin;touch-action:pan-x pan-y pinch-zoom!important}
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) #bottomNav>button{flex:0 0 auto!important;width:auto!important;min-width:54px!important;height:44px!important;min-height:44px!important;padding:2px 7px!important}
 html[data-imo-visual="57"] body:not(.journey33-open) #bpLayout #app .phone:has(#chat) #bottomNav>button>b{white-space:nowrap!important;font-size:11px!important}
 html[data-imo-visual="57"] body #bpLayout #app #imo-visitor-context-v19{min-height:36px!important;padding:4px 10px!important;font-size:12px!important}
 #imo-visual-home-v57{padding-top:7px}.v57-home-heading h2{font-size:16px}.v57-home-heading small{font-size:10px}
 html[data-imo-visual="57"] body.journey33-open #j33-guide{padding:10px}
 .journey33-open #j33-plan .j33-place{flex:none;scroll-snap-align:none}
}
