/* v40: only the journal, station return controls, dock state and GPS camera. */
body.cc-app #diarioFullscreen .diario-days-grid {grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:4px!important;}
body.cc-app #diarioFullscreen .diario-day {
 display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:space-between!important;
 min-width:0!important;width:100%!important;min-height:68px!important;height:76px!important;aspect-ratio:auto!important;
 padding:6px 1px!important;gap:4px!important;overflow:visible!important;transform:none!important;
}
body.cc-app #diarioFullscreen .diario-day.empty {visibility:hidden!important;pointer-events:none!important;}
body.cc-app #diarioFullscreen .diario-day-num {font:650 16px/1.2 system-ui,sans-serif!important;}
body.cc-app #diarioFullscreen .diario-day-net {
 display:block!important;position:static!important;box-sizing:border-box!important;flex:0 0 auto!important;
 width:auto!important;max-width:100%!important;min-width:0!important;padding:3px 2px!important;
 white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important;text-overflow:clip!important;overflow:visible!important;
 font:700 clamp(10px,2.6vw,12px)/1.25 system-ui,sans-serif!important;letter-spacing:-.2px!important; margin:0!important;
}
body.cc-app #diarioFullscreen .diario-summary-value {font-size:clamp(23px,5.8vw,32px)!important;white-space:nowrap!important;}
body.cc-app #diarioFullscreen .diario-summary-label {font-size:13px!important;line-height:1.3!important;}
body.cc-app #diarioFullscreen .diario-summary-box {padding:12px!important;min-width:0!important;}
body.cc-app #diarioFullscreen .diario-calendar-head {display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;gap:5px!important;align-items:center!important;margin:14px 0!important;}
body.cc-app #diarioFullscreen .diario-calendar-head button {width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;font-size:24px!important;}
body.cc-app #diarioFullscreen #diarioMonthLabel {text-align:center!important;white-space:nowrap!important;font-size:clamp(15px,4.2vw,20px)!important;}
/* The old overlay z-index was below the v39 sheet (2300). It is now a single
   interactive dialog on top. No separate dataset or copies of the records. */
body.cc-app #diarioModalBackdrop:not(.hidden) {
 display:flex!important;align-items:center!important;justify-content:center!important;position:fixed!important;
 inset:0!important;z-index:4200!important;padding:12px!important;box-sizing:border-box!important;
 background:#0006!important;overflow:hidden!important;pointer-events:auto!important;
}
body.cc-app #diarioModalBackdrop.hidden {display:none!important;}
body.cc-app #diarioModalBackdrop .diario-modal {
 box-sizing:border-box!important;position:relative!important;inset:auto!important;transform:none!important;
 width:min(520px,100%)!important;max-width:100%!important;min-width:0!important;height:auto!important;
 max-height:calc(var(--cc-view-height,100dvh) - 24px - var(--cc-safe-top,0px) - var(--cc-safe-bottom,0px))!important;
 overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;
 padding:12px 16px 24px!important;border-radius:20px!important;color:var(--cc32-ink)!important;background:var(--cc32-surface)!important;
}
body.cc-app #diarioModalBackdrop .diario-modal-close {
 display:block!important;float:none!important;position:sticky!important;top:0!important;left:auto!important;right:auto!important;
 width:auto!important;height:40px!important;min-height:40px!important;padding:8px 12px!important;margin:0 0 12px auto!important;
 z-index:2!important;border-radius:12px!important;background:var(--cc32-soft)!important;color:var(--cc32-ink)!important;
 font:650 14px/1.2 system-ui,sans-serif!important;
}
body.cc-app #diarioModalBackdrop h2 {font:700 20px/1.25 system-ui,sans-serif!important;margin:10px 0 14px!important;}
body.cc-app #diarioModalBackdrop .trip-stats-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;}
body.cc-app #diarioModalBackdrop .trip-stat-box {padding:12px!important;min-height:72px!important;min-width:0!important;}
body.cc-app #diarioModalBackdrop .trip-stat-value {font-size:22px!important;line-height:1.3!important;overflow-wrap:anywhere;}
body.cc-app #diarioModalBackdrop .trip-stat-label {font-size:12px!important;line-height:1.3!important;}
body.cc-app #diarioModalBackdrop .diario-net-box {display:flex;flex-wrap:wrap;gap:8px!important;padding:12px!important;}
body.cc-app #diarioModalBackdrop .diario-net-label {font-size:13px!important;}
body.cc-app #diarioModalBackdrop .diario-net-value {font-size:24px!important;}
body.cc-app #diarioModalBackdrop input {font-size:16px!important;min-height:44px!important;}
body.cc-app.diario-editing :is(#tripActiveMini,#tripMiniRestoreBtn,#mobileDock) {visibility:hidden!important;pointer-events:none!important;}
body.cc-app :is(#rightListBackBtn,#stationDetailBackBtn) {min-height:40px!important;white-space:nowrap!important;font-size:13px!important;flex-shrink:0;}
body.cc-app #rightListTitle {min-width:0;font-size:18px!important;line-height:1.2!important;}
@media(max-width:920px){
 body.cc-app #diarioModalBackdrop:not(.hidden) {align-items:flex-end!important;padding:calc(12px + var(--cc-safe-top,0px)) 8px calc(10px + var(--cc-safe-bottom,0px))!important;}
 body.cc-app #diarioModalBackdrop .diario-modal {width:100%!important;}
 body.cc-app #diarioFullscreen .diario-fullscreen-inner {padding-bottom:20px!important;}
}
/* Camera viewport stays fixed. Only the map surface rotates, never sheets,
   controls or the required provider attribution. Station labels are counter-rotated by offline-v45.css. */
body.cc-app .map-wrap {overflow:hidden;isolation:isolate;}
body.cc-app #map.cc40-rotating-map {
 position:absolute!important;inset:auto!important;left:var(--cc40-map-left)!important;top:var(--cc40-map-top)!important;
 width:var(--cc40-map-side)!important;height:var(--cc40-map-side)!important;min-height:0!important;max-height:none!important;max-width:none!important;
 transform-origin:50% 50%!important;transform:rotate(var(--cc40-map-angle,0deg))!important;transition:transform .35s ease-out;
}
.cc40-follow {position:absolute;right:12px;top:calc(70px + var(--cc-safe-top,0px));z-index:1600;min-height:44px;min-width:44px;border-radius:50%;font:700 24px/1 system-ui;padding:8px;background:var(--cc32-surface,#173247);color:var(--cc32-ink,#e5f2ff);border:1px solid #8db8d7;box-shadow:0 2px 8px #0003;}
.cc40-follow.following {border-color:#59c8df;color:#59c8df;}
.cc40-follow[hidden] {display:none!important;}
.cc40-attribution {position:absolute;right:0;bottom:0;z-index:1400;max-width:100%;}
body.cc-app .cc40-attribution .leaflet-control-attribution {margin:0;float:none;font-size:10px;}
@media(prefers-reduced-motion:reduce){body.cc-app #map.cc40-rotating-map{transition:none!important;}}
body.cc-app button.cc40-follow {
 position:absolute!important;left:auto!important;right:12px!important;top:calc(70px + var(--cc-safe-top,0px))!important;bottom:auto!important;
 width:44px!important;max-width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;
 margin:0!important;padding:8px!important;border-radius:50%!important;transform:none!important;
 font:700 24px/1 system-ui,sans-serif!important;
}
body.cc-app button.cc40-follow[hidden]{display:none!important;}
