/* 2.11.2026 Reflow for "Larger text", browser zoom up to 200% and 320 CSS px wide screens.
   Loaded last on purpose. Places become a plain one-column list: one place per row with name, category,
   address and open status, nothing truncated, and every control at least 44 px tall. */
#results,#detail,dialog.pc-panel,#guideBubble,.search-dock{overflow-wrap:break-word}
#results .place-card h3,#results .place-card p{min-width:0}

/* Larger text: line-based single-column list in every results layout (cards / wide / compact list). */
html body.pc-large-text #results#results #list{display:block!important;grid-template-columns:none!important;columns:auto!important;gap:0!important}
html body.pc-large-text #results#results .place-card{display:block!important;grid-template-columns:none!important;width:auto!important;min-height:0!important;padding:.875rem 1rem!important;margin:0!important;border-radius:0!important;border:0!important;border-bottom:1px solid #ede5f3!important;box-shadow:none!important;position:relative}
html body.pc-large-text #results#results .place-card .place-visual{display:none!important}
html body.pc-large-text #results#results .place-card .kind{font-size:.9375rem!important;line-height:1.4;padding-right:3.25rem}
html body.pc-large-text #results#results .place-card h3{font-size:1.1875rem!important;line-height:1.35!important;margin:.25rem 3.25rem .25rem 0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;-webkit-line-clamp:unset!important;display:block!important;max-height:none!important}
html body.pc-large-text #results#results .place-card h3 a{white-space:normal!important}
html body.pc-large-text #results#results .place-card>p{font-size:1rem!important;line-height:1.45!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;-webkit-line-clamp:unset!important;display:block!important;max-height:none!important;margin:0 0 .375rem!important}
html body.pc-large-text #results#results .place-card :is(.closed-now-badge,.open-now-badge,.booking-demo-badge,[class*=badge]){font-size:.9375rem!important;line-height:1.35;white-space:normal!important;display:inline-block;margin:.125rem .25rem .125rem 0}
html body.pc-large-text #results#results .place-card .meta{display:flex!important;flex-wrap:wrap;gap:.25rem .75rem;font-size:.9375rem!important;white-space:normal!important}
html body.pc-large-text #results#results .place-card .save-button{position:absolute!important;top:.5rem;right:.5rem;min-width:44px!important;min-height:44px!important}
html body.pc-large-text #results#results .public-card-actions{display:flex!important;flex-direction:column!important;gap:.375rem!important;margin-top:.5rem}
html body.pc-large-text #results#results .public-card-actions>*{width:100%!important;min-height:44px!important;font-size:1rem!important;white-space:normal!important;justify-content:center}
html body.pc-large-text #results#results .personal-tabs button,body.pc-large-text #results .saved-view-shortcuts button,body.pc-large-text #categories button{min-height:44px!important}
/* The panel grows with the text instead of clipping it at the right edge. */
body.pc-large-text[data-care-layout]:not([data-care-layout=compact]) #results{width:min(25rem,calc(100vw - var(--rail,56px) - 24px))!important;max-width:calc(100vw - var(--rail,56px) - 24px)!important}
body.pc-large-text dialog.pc-panel[open],body.pc-large-text #detail{max-width:calc(100vw - 16px)!important}
body.pc-large-text dialog.pc-panel[open]{max-height:calc(100dvh - 16px)!important;overflow-y:auto!important}
body.pc-large-text #guideBubble{max-width:min(26rem,calc(100vw - 16px))!important}
/* Minimized tray never grows past the screen at large text: one scrollable row. */
body.pc-large-text #pcWindowTray{max-width:min(60vw,calc(100vw - 16px))!important}
@media (max-width:760px){body.pc-large-text #pcWindowTray{max-width:calc(100vw - 16px)!important}}
/* 320 CSS px (phones at 200% zoom): no sideways scrolling. */
@media (max-width:360px){
 .owner-topbar{gap:4px!important}
 #results .public-card-actions{grid-template-columns:1fr!important}
 #results .public-card-actions>*{grid-column:auto!important}
}
/* Phone top bar: room for the pet switcher and a readable language name, also at Larger text. */
body[data-care-layout=compact] .owner-topbar .language-choice select{width:auto!important;min-width:4.75rem;max-width:7.5rem;padding-left:.5rem!important;padding-right:.25rem!important}
body.pc-large-text[data-care-layout=compact] #careViewSwitcher button{font-size:0!important;width:44px!important;min-height:44px!important;padding:8px!important}
body.pc-large-text[data-care-layout=compact] #careViewSwitcher .ico{display:block!important;width:22px;height:22px}
body.pc-large-text[data-care-layout=compact] .owner-topbar .language-choice select{font-size:.9375rem!important;min-height:44px;min-width:6.5rem}
@media (max-width:430px){html body[data-care-layout=compact]:not([data-care-layout=desktop]) .owner-topbar>img{width:34px!important;max-width:34px!important;min-width:34px;height:34px!important;object-fit:cover;object-position:left center}}
@media (max-width:340px){html body[data-care-layout=compact]:not([data-care-layout=desktop]) .owner-topbar>img{display:none!important}}
/* Tablet top bar at 150% zoom / Larger text: drop the visible "Language / 言語" caption (the select keeps it as its label) and the pet name before anything is pushed off the right edge. */
@media (max-width:1024px){body:is([data-care-layout=duo],[data-care-layout=landscape]) .owner-topbar .language-choice>span{display:none!important}}
@media (max-width:900px){body:is([data-care-layout=duo],[data-care-layout=landscape]) .pc-pet-label{display:none}}
body.pc-large-text:is([data-care-layout=duo],[data-care-layout=landscape]) .owner-topbar .language-choice>span{display:none!important}
