/* Phone controls and optional place details. The basemap keeps its own colors. */
.mobile-dock{display:none}
.mobile-more,.google-sheet{position:fixed;z-index:950;background:#fff;color:#19384c;border:1px solid #dbe8ef;box-shadow:0 15px 50px #092c4770}
.mobile-more{right:18px;bottom:18px;width:min(390px,calc(100% - 36px));max-height:75dvh;overflow:auto;border-radius:22px;padding:17px}
.mobile-more-head,.google-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.mobile-more-head button,.google-head button{width:42px;height:42px;border:0;border-radius:14px;background:#edf3f7;color:#243e55;font-size:25px}
.mobile-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px}
.mobile-more-grid button{min-height:48px;border:1px solid #dce7ee;border-radius:12px;background:#f7fafc;color:#20516d;font-size:13px;font-weight:750;text-align:left;padding:7px 10px}
.mobile-more-grid button[aria-pressed="true"]{background:#e5f1ff;border-color:#4e9af1}
#mobile-more-status{font-size:12px;color:#617d8c;line-height:1.4;margin:13px 0 0}
.google-sheet{left:50%;bottom:16px;transform:translateX(-50%);width:min(430px,calc(100% - 32px));max-height:min(88dvh,850px);border-radius:23px;overflow:auto;padding:18px;overscroll-behavior:contain}
.google-head h2{font-size:19px;margin:0;line-height:1.2}
.google-search-label{display:block;margin:15px 0 6px;font-size:12px;font-weight:800;color:#345a70}
.google-search-row{display:flex;gap:7px}
.google-search-row input{min-width:0;flex:1;height:46px;border:1px solid #cbdde9;border-radius:11px;padding:0 12px;font-size:14px}
.google-search-row button{min-width:75px;border:0;border-radius:11px;background:#1769ed;color:white;font-size:12px;font-weight:800}
#google-status{color:#627b89;font-size:12px;line-height:1.4}
#google-content{display:flex;flex-direction:column;gap:12px}
#google-content gmp-place-search,#google-content gmp-place-details{display:block;width:100%;min-width:250px;max-height:48dvh;overflow:auto;color-scheme:light}
#google-content gmp-place-details[hidden]{display:none}
.google-external{font-size:13px;color:#165aa9;font-weight:800;padding:8px 3px;order:2}
#google-route{display:block;width:100%;min-height:48px;margin-top:12px;border:0;border-radius:12px;background:#1769ed;color:#fff;font-size:13px;font-weight:800}
#google-route[hidden]{display:none}
.discover-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:4px 16px 12px;border-bottom:1px solid #e3edf2}
.discover-controls .filter-field{grid-column:span 2}
.discover-controls label{font-size:11px;font-weight:750;color:#506b7d;min-width:0}
.discover-controls input,.discover-controls select,.discover-controls button{width:100%;min-width:0;min-height:42px;border:1px solid #d9e6ed;background:#f8fafc;border-radius:10px;padding:5px 9px;color:#1d465e;font-size:13px}
.discover-controls button{font-size:11px;font-weight:800}
.discover-controls button[aria-pressed="true"]{background:#e5f2fe;border-color:#85b9f3;color:#1558a3}
.discover-heading>div{flex:1;min-width:0}
.place-card-header>button,.discover-heading>button{width:37px;height:37px}
.discover-results.expanded{max-height:min(83dvh,800px)}
.place-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:12px 17px 2px}
.place-tools button{min-height:44px;border:1px solid #d9e5eb;border-radius:11px;background:#f8fbfd;color:#23516d;font-size:11px;font-weight:750}
.place-tools button[aria-pressed="true"]{background:#e5f5e9;border-color:#9ac9a9}
.place-note-label{display:block;margin:8px 17px 0;color:#345a71;font-size:11px;font-weight:750}
.place-note-label textarea{display:block;box-sizing:border-box;width:100%;min-height:55px;margin-top:5px;border:1px solid #d8e5ec;border-radius:11px;resize:vertical;padding:9px;color:#173d50;font:inherit;font-size:13px}
.place-secondary{flex-wrap:wrap}
.place-secondary button{min-width:100px}
.google-action{display:block;width:calc(100% - 34px);margin:8px 17px 5px;min-height:45px;border:1px solid #aac8e8;border-radius:12px;background:#eff6fe;color:#175299;font-size:12px;font-weight:800}
.place-card.compact .place-tools,.place-card.compact .place-details,.place-card.compact .place-note-label,
.place-card.compact .place-secondary,.place-card.compact .google-action{display:none}
.place-card.compact{max-height:40dvh}
body.ui-large .discover-result strong,body.ui-large .place-detail,body.ui-large .place-actions button,
body.ui-large .place-tools button,body.ui-large .mobile-more button{font-size:15px}
body.ui-large .discover-result small,body.ui-large .place-card-header p{font-size:13px}
body.ui-dark .discover-results,body.ui-dark .place-card,body.ui-dark .mobile-more{background:#122b3d;color:#e8f3fa;border-color:#375467}
body.ui-dark .discover-heading,body.ui-dark .place-card-header,body.ui-dark .discover-result{background:#122b3d;color:#e8f3fa}
body.ui-dark .discover-heading h2,body.ui-dark .place-card h2,body.ui-dark .place-detail b{color:#f1f7fa}
body.ui-dark .place-detail,body.ui-dark .discover-heading p,body.ui-dark .place-card-header p{color:#b3c8d4;border-color:#325163}
body.ui-dark .discover-controls input,body.ui-dark .discover-controls select,body.ui-dark .place-note-label textarea,
body.ui-dark .place-actions button,body.ui-dark .place-tools button,body.ui-dark .mobile-more-grid button{background:#213c51;color:#eff7fc;border-color:#446277}
body.ui-dark .place-note-label{color:#c1d5e0}
body.ui-dark .panel,body.ui-dark .layers-sheet{background:#122b3d;color:#e8f3fa;border-color:#375467}
body.ui-dark .intro h1,body.ui-dark .layers-head h2,body.ui-dark .tools-section>summary,
body.ui-dark .route-card b,body.ui-dark .feature-heading,body.ui-dark .suggestion strong{color:#eff7fc}
body.ui-dark .intro p,body.ui-dark .field-label,body.ui-dark .search-hint,
body.ui-dark .route-meta,body.ui-dark .suggestion small{color:#b4c9d6}
body.ui-dark .field,body.ui-dark .suggestions,body.ui-dark .recent-section,body.ui-dark .tools-section,
body.ui-dark .feature-box,body.ui-dark .route-card,body.ui-dark .preference-row,
body.ui-dark .feed-status,body.ui-dark .mode-switch{background:#213c51;color:#e8f3fa;border-color:#446277}
body.ui-dark .search-wrap input{color:#f4f9fb}
body.ui-dark .field-action,body.ui-dark .layers-head button,body.ui-dark .map-style-switch button,
body.ui-dark .tool-grid button{background:#29475b;color:#eff7fc;border-color:#527085}
body.ui-dark .planner-peek,body.ui-dark .layers-fab,body.ui-dark .map-actions button{background:#1c394d;color:#eff7fc;border-color:#446277}
@media(max-width:760px){
  body.planner-minimized:not(.nav-active):not(.arrived):not(.viewing-share) .mobile-dock{display:flex}
  .mobile-dock{position:fixed;z-index:790;left:0;right:0;bottom:0;min-height:63px;padding:5px 5px calc(5px + env(safe-area-inset-bottom));align-items:center;justify-content:space-around;background:#fff;border-top:1px solid #dce7ec;box-shadow:0 -5px 25px #103a5723}
  .mobile-dock button{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:55px;border:0;background:none;color:#254b64;font-size:11px;font-weight:800;touch-action:manipulation}
  .mobile-dock button span{font-size:23px;line-height:1}
  body.planner-minimized:not(.nav-active):not(.arrived) .map-actions{bottom:calc(82px + env(safe-area-inset-bottom))}
  .discover-results,.place-card{bottom:calc(68px + env(safe-area-inset-bottom));padding-bottom:0}
  .discover-results{max-height:min(42dvh,410px)}
  .place-card{max-height:min(67dvh,680px)}
  body.planner-minimized.discover-open:not(.nav-active):not(.arrived) .map-actions{bottom:calc(min(42dvh,410px) + 82px + env(safe-area-inset-bottom))}
  .mobile-more{left:0;right:0;bottom:calc(68px + env(safe-area-inset-bottom));width:100%;max-height:70dvh;border-radius:22px 22px 0 0;padding:18px;box-sizing:border-box}
  .google-sheet{left:0;bottom:0;transform:none;width:100%;max-height:91dvh;box-sizing:border-box;border-radius:23px 23px 0 0;padding-bottom:calc(18px + env(safe-area-inset-bottom))}
  body.ui-dark .mobile-dock{background:#122b3d;border-color:#375467}
  body.ui-dark .mobile-dock button{color:#e2eef5}
}
body.nav-active .mobile-more,body.arrived .mobile-more,body.viewing-share .mobile-more,
body.nav-active .google-sheet,body.arrived .google-sheet,body.viewing-share .google-sheet{display:none}
body.discover-expanded .map-actions{display:none}
@media(max-width:360px){.mobile-dock button{font-size:9px}.place-actions button{font-size:10px}}
@media(prefers-reduced-motion:reduce){.mobile-dock button,.place-card,.discover-results{scroll-behavior:auto;transition:none}}
