/* RadarČeska — Turistika v2.4.0
   MOBILE + READABILITY POLISH

   Goals:
   - fix unstyled black/oversized SVGs on mobile
   - make route planner a real mobile bottom-sheet, not a desktop panel squeezed down
   - make the right "Trasa" control the same clean compact button language as desktop
   - style Profile + Weather modules on mobile (their original releases were desktop-only)
   - improve desktop readability of Weather + Route Alternatives
   - preserve notebook Compact / Compact+ behavior
   - no forced declarations
*/

/* ============================================================
   1) MOBILE — right map toolbar
   ============================================================ */
@media (max-width:820px){

  .map-actions{
    right:10px;
    gap:7px;
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
  }

  .map-actions .map-action{
    width:42px;
    height:42px;
    min-width:42px;
    min-height:42px;
    padding:0;
    border:1px solid rgba(38,67,72,.10);
    border-radius:13px;
    background:rgba(255,255,255,.91);
    color:#395258;
    box-shadow:0 5px 17px rgba(30,52,57,.075);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    display:grid;
    place-items:center;
  }

  .map-actions .map-action:hover,
  .map-actions .map-action:focus-visible{
    background:rgba(255,255,255,.98);
    border-color:rgba(49,78,83,.15);
    outline:none;
  }

  .map-actions .map-action svg{
    width:19px;
    height:19px;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  .map-actions .map-zoom-action{
    font-size:22px;
    font-weight:580;
  }

  /* This is the important "like desktop: just a button" change. */
  .map-actions #touristMapBtn,
  .map-actions #touristPlannerBtn{
    width:42px;
    min-width:42px;
    height:42px;
    min-height:42px;
    border-radius:13px;
  }

  .map-actions #touristMapBtn .tourist-map-state,
  .map-actions #touristPlannerBtn .tourist-planner-state{
    display:none;
  }

  .map-actions #touristMapBtn[aria-pressed="true"],
  .map-actions #touristPlannerBtn[aria-pressed="true"],
  .map-actions #touristPlannerBtn.is-active{
    color:#176b5c;
    background:rgba(232,247,242,.96);
    border-color:rgba(34,165,139,.24);
    box-shadow:0 5px 17px rgba(30,83,72,.09);
  }

  /* ==========================================================
     2) MOBILE — planner shell
     ========================================================== */
  .rc-tourist-planner-v211{
    left:6px;
    right:auto;
    bottom:calc(76px + env(safe-area-inset-bottom,0px));
    width:calc(100vw - 12px);
    max-width:none;
    max-height:min(72svh,620px);
    border-radius:18px;
    border-color:rgba(43,67,71,.09);
    background:rgba(251,253,252,.975);
    box-shadow:
      0 15px 38px rgba(27,48,52,.15),
      0 2px 8px rgba(27,48,52,.035);
    overflow:hidden;
  }

  .rc-tourist-planner-v211-handle{
    display:block;
    width:34px;
    height:3px;
    margin:6px auto 0;
    background:rgba(63,82,84,.18);
  }

  .rc-tourist-planner-v211-head{
    min-height:48px;
    padding:5px 7px 6px 13px;
    gap:4px;
    border-bottom-color:rgba(47,72,76,.07);
  }

  .rc-tourist-planner-v211-title strong{
    font-size:15.5px;
    line-height:1.05;
    font-weight:820;
    letter-spacing:-.022em;
    color:#19383d;
  }

  .rc-tourist-planner-v211-title small{
    margin-top:3px;
    font-size:9px;
    line-height:1.1;
    font-weight:640;
    color:#72858a;
  }

  .rc-tourist-planner-v211-iconbtn{
    width:34px;
    height:34px;
    border-radius:10px;
  }

  .rc-tourist-planner-v211-iconbtn svg{
    width:17px;
    height:17px;
    display:block;
    fill:none;
    stroke:currentColor;
  }

  .rc-tourist-planner-v211-body{
    padding:8px 9px 9px;
    max-height:calc(min(72svh,620px) - 57px);
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:none;
  }

  .rc-tourist-planner-v211-body::-webkit-scrollbar{
    display:none;
  }

  /* Mode cards: compact and properly-styled inline SVGs. */
  .rc-tourist-planner-v211-modes{
    gap:6px;
    padding:0;
    border:0;
    background:transparent;
  }

  .rc-tourist-planner-v211-mode{
    min-height:44px;
    gap:6px;
    padding:0 7px;
    border:1px solid rgba(45,70,74,.10);
    border-radius:11px;
    background:rgba(255,255,255,.84);
    color:#40585d;
    box-shadow:0 2px 7px rgba(31,53,57,.02);
    font-size:10px;
    font-weight:740;
  }

  .rc-tourist-planner-v211-mode.is-active{
    color:#176b5c;
    background:rgba(239,250,247,.98);
    border-color:rgba(22,173,145,.50);
    box-shadow:0 2px 8px rgba(31,111,96,.045);
  }

  /* FIX: desktop JS inserts these icons on every viewport.
     Without these mobile rules SVG defaults became huge black artwork. */
  .rc-tourist-planner-v211-mode .rc-planner-mode-icon{
    width:20px;
    height:20px;
    flex:0 0 20px;
    display:grid;
    place-items:center;
    color:currentColor;
  }

  .rc-tourist-planner-v211-mode .rc-planner-mode-icon svg{
    width:20px;
    height:20px;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
    overflow:visible;
  }

  /* Helper line / info icon — same black-SVG fix. */
  .rc-tourist-planner-v211-step{
    min-height:28px;
    margin:5px 1px 3px;
    gap:6px;
    color:#63777c;
    font-size:9px;
    line-height:1.2;
  }

  .rc-tourist-planner-v211-step-dot{
    width:19px;
    height:19px;
    flex:0 0 19px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:rgba(71,96,100,.075);
    color:#607a80;
    box-shadow:none;
  }

  .rc-tourist-planner-v211-step-dot svg{
    width:11px;
    height:11px;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  .rc-tourist-planner-v211.rc-v240-has-route .rc-tourist-planner-v211-step{
    min-height:20px;
    margin-top:3px;
    margin-bottom:1px;
    font-size:8px;
  }

  /* Distance / time. */
  .rc-tourist-planner-v211-summary{
    gap:6px;
    margin-top:3px;
  }

  .rc-tourist-planner-v211-stat{
    min-height:54px;
    display:grid;
    grid-template-columns:27px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:7px;
    align-content:center;
    padding:7px 9px;
    border-radius:12px;
    background:rgba(244,248,247,.86);
  }

  .rc-tourist-planner-v211-stat .rc-planner-stat-icon{
    grid-column:1;
    grid-row:1 / span 2;
    align-self:center;
    width:25px;
    height:25px;
    display:grid;
    place-items:center;
    color:#315861;
  }

  .rc-tourist-planner-v211-stat .rc-planner-stat-icon svg{
    width:20px;
    height:20px;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  .rc-tourist-planner-v211-stat > span:not(.rc-planner-stat-icon){
    grid-column:2;
    grid-row:1;
    font-size:7px;
    line-height:1;
    color:#798b90;
  }

  .rc-tourist-planner-v211-stat > strong{
    grid-column:2;
    grid-row:2;
    margin-top:4px;
    font-size:14px;
    line-height:1;
    color:#29484f;
  }

  /* ==========================================================
     3) MOBILE — elevation profile
     The original profile release was desktop-only.
     This block is what removes the giant black SVG/areas.
     ========================================================== */
  .rc-tourist-planner-v211 .rc-route-profile-v230{
    margin-top:6px;
    padding:7px 8px 6px;
    border:1px solid rgba(45,70,74,.07);
    border-radius:11px;
    background:rgba(247,249,249,.82);
    overflow:hidden;
  }

  .rc-route-profile-v230-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:8px;
  }

  .rc-route-profile-v230-title strong{
    display:block;
    color:#29484f;
    font-size:9px;
    line-height:1;
    font-weight:810;
  }

  .rc-route-profile-v230-title small{
    display:none;
  }

  .rc-route-profile-v230-metrics{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    color:#60767d;
    font-size:6.7px;
    line-height:1;
    font-weight:760;
    white-space:nowrap;
  }

  .rc-route-profile-v230-metrics b{
    color:#2c5159;
    font-size:7.2px;
    font-weight:820;
  }

  .rc-route-profile-v230-chart{
    position:relative;
    height:72px;
    margin-top:5px;
    cursor:crosshair;
    touch-action:pan-y;
    user-select:none;
  }

  .rc-route-profile-v230-chart svg{
    display:block;
    width:100%;
    height:100%;
    overflow:visible;
  }

  .rc-route-profile-v230-grid{
    fill:none;
    stroke:rgba(67,93,98,.09);
    stroke-width:.8;
    vector-effect:non-scaling-stroke;
  }

  .rc-route-profile-v230-area{
    fill:rgba(47,130,112,.07);
    stroke:none;
  }

  .rc-route-profile-v230-line{
    fill:none;
    stroke:#587a74;
    stroke-width:1.75;
    vector-effect:non-scaling-stroke;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  .rc-route-profile-v230-high{
    fill:#fff;
    stroke:#2b7668;
    stroke-width:1.6;
    vector-effect:non-scaling-stroke;
  }

  .rc-route-profile-v230-hoverline{
    opacity:0;
    fill:none;
    stroke:rgba(32,75,68,.32);
    stroke-width:1;
    stroke-dasharray:2 2;
    vector-effect:non-scaling-stroke;
  }

  .rc-route-profile-v230-hoverdot{
    opacity:0;
    fill:#fff;
    stroke:#119a82;
    stroke-width:2;
    vector-effect:non-scaling-stroke;
  }

  .rc-route-profile-v230.is-hovering .rc-route-profile-v230-hoverline,
  .rc-route-profile-v230.is-hovering .rc-route-profile-v230-hoverdot{
    opacity:1;
  }

  .rc-route-profile-v230-tooltip{
    position:absolute;
    top:2px;
    left:0;
    z-index:2;
    min-width:68px;
    padding:4px 6px;
    border:1px solid rgba(39,68,72,.10);
    border-radius:8px;
    background:rgba(255,255,255,.97);
    box-shadow:0 6px 16px rgba(31,53,57,.10);
    color:#405b61;
    font-size:6.8px;
    line-height:1.22;
    font-weight:690;
    pointer-events:none;
    opacity:0;
  }

  .rc-route-profile-v230.is-hovering .rc-route-profile-v230-tooltip{
    opacity:1;
  }

  .rc-route-profile-v230-tooltip b{
    display:block;
    margin-bottom:1px;
    color:#1d4e46;
    font-size:7.7px;
    font-weight:830;
  }

  .rc-route-profile-v230-axis{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-top:2px;
    color:#89989b;
    font-size:5.8px;
    line-height:1;
    font-weight:650;
  }

  .rc-route-profile-v230-source{
    display:none;
  }

  .rc-route-profile-v230-loading,
  .rc-route-profile-v230-error{
    min-height:50px;
    display:flex;
    align-items:center;
    gap:6px;
    color:#72858a;
    font-size:7.5px;
    line-height:1.3;
  }

  .rc-route-profile-v230-loading i{
    width:12px;
    height:12px;
    flex:0 0 12px;
    border:2px solid rgba(47,107,96,.18);
    border-top-color:#248b78;
    border-radius:50%;
  }

  /* ==========================================================
     4) MOBILE — weather on route
     Original v2.3.2 CSS was desktop-only, so mobile needs a full style.
     ========================================================== */
  .rc-tourist-planner-v211 .rc-route-weather-v232{
    position:relative;
    margin-top:5px;
    padding:6px 3px 2px;
    border-top:1px solid rgba(54,79,83,.06);
  }

  .rc-route-weather-v232-head{
    min-height:23px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:7px;
  }

  .rc-route-weather-v232-title{
    display:flex;
    align-items:center;
    gap:5px;
    min-width:0;
    color:#456269;
    font-size:8px;
    line-height:1;
    font-weight:820;
  }

  .rc-route-weather-v232-title svg,
  .rc-route-weather-v232-depart svg,
  .rc-route-weather-v232-icon svg,
  .rc-route-weather-v232-summary-icon svg{
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  .rc-route-weather-v232-title svg{
    width:12px;height:12px;stroke-width:1.8;
  }

  .rc-route-weather-v232-mode{
    display:flex;
    align-items:center;
    gap:2px;
    padding:2px;
    border:1px solid rgba(49,76,80,.08);
    border-radius:8px;
    background:rgba(241,245,245,.82);
  }

  .rc-route-weather-v232-mode button{
    min-height:22px;
    padding:0 7px;
    border:0;
    border-radius:6px;
    background:transparent;
    color:#71858a;
    font:inherit;
    font-size:6.5px;
    line-height:1;
    font-weight:760;
  }

  .rc-route-weather-v232-mode button.is-active{
    background:#fff;
    color:#176b5c;
    box-shadow:0 1px 4px rgba(31,53,57,.06);
  }

  .rc-route-weather-v232-meta{
    min-height:21px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:7px;
    margin-top:2px;
  }

  .rc-route-weather-v232-depart{
    min-height:20px;
    display:inline-flex;
    align-items:center;
    gap:4px;
    padding:0 6px;
    border:1px solid rgba(43,72,76,.08);
    border-radius:7px;
    background:rgba(255,255,255,.72);
    color:#567078;
    font-size:6.5px;
    font-weight:740;
  }

  .rc-route-weather-v232-depart svg{
    width:10px;height:10px;stroke-width:1.8;
  }

  .rc-route-weather-v232-hint{
    color:#93a0a4;
    font-size:5.8px;
    line-height:1;
    font-weight:650;
    white-space:nowrap;
  }

  .rc-route-weather-v232-summary{
    min-height:44px;
    margin-top:4px;
    display:grid;
    grid-template-columns:28px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:7px;
    align-items:center;
    padding:5px 6px;
    border-radius:9px;
    background:rgba(247,250,249,.80);
  }

  .rc-route-weather-v232-summary-icon{
    grid-column:1;
    grid-row:1 / span 2;
    width:27px;height:27px;
    display:grid;place-items:center;
    color:#507079;
  }

  .rc-route-weather-v232-summary-icon svg{
    width:22px;height:22px;stroke-width:1.6;
  }

  .rc-route-weather-v232-summary-main{
    grid-column:2;
    grid-row:1;
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:3px 6px;
    min-width:0;
  }

  .rc-route-weather-v232-summary-main b{
    color:#254d55;
    font-size:8.2px;
    line-height:1.15;
    font-weight:820;
  }

  .rc-route-weather-v232-summary-main strong{
    color:#173e46;
    font-size:12.5px;
    line-height:1;
    font-weight:850;
  }

  .rc-route-weather-v232-summary-sub{
    grid-column:2;
    grid-row:2;
    margin-top:2px;
    color:#72868c;
    font-size:6.5px;
    line-height:1.22;
    font-weight:650;
  }

  .rc-route-weather-v232-track{
    position:relative;
    height:48px;
    margin-top:4px;
  }

  .rc-route-weather-v232-baseline{
    position:absolute;
    left:3%;right:3%;top:18px;height:1px;
    background:rgba(74,100,104,.10);
  }

  .rc-route-weather-v232-point{
    position:absolute;
    top:0;
    width:46px;
    margin-left:-23px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:1px;
    color:#466168;
    z-index:1;
  }

  .rc-route-weather-v232-point::after{
    content:"";
    position:absolute;
    top:17px;
    left:50%;
    width:5px;height:5px;
    margin-left:-2.5px;
    border:1.4px solid rgba(65,94,97,.30);
    border-radius:50%;
    background:#f9fbfa;
    box-sizing:border-box;
  }

  .rc-route-weather-v232-icon{
    width:16px;height:16px;
    display:grid;place-items:center;
    color:#526f74;
  }

  .rc-route-weather-v232-icon svg{
    width:15px;height:15px;stroke-width:1.6;
  }

  .rc-route-weather-v232-point b{
    margin-top:5px;
    color:#31535a;
    font-size:7px;
    line-height:1;
    font-weight:840;
  }

  .rc-route-weather-v232-point em{
    margin-top:1px;
    color:#798c91;
    font-size:5.4px;
    line-height:1;
    font-style:normal;
    font-weight:690;
    white-space:nowrap;
  }

  .rc-route-weather-v232-tip{
    position:absolute;
    z-index:7;
    top:-48px;
    width:116px;
    min-height:40px;
    padding:5px 6px;
    border:1px solid rgba(39,68,72,.10);
    border-radius:8px;
    background:rgba(255,255,255,.985);
    box-shadow:0 7px 20px rgba(31,53,57,.12);
    color:#49646a;
    font-size:6.2px;
    line-height:1.25;
  }

  .rc-route-weather-v232-picker{
    position:absolute;
    z-index:12;
    right:2px;
    top:51px;
    width:min(210px,calc(100vw - 42px));
    padding:7px;
    border:1px solid rgba(39,68,72,.11);
    border-radius:10px;
    background:rgba(255,255,255,.99);
    box-shadow:0 10px 28px rgba(31,53,57,.14);
  }

  .rc-route-weather-v232-picker[hidden]{display:none}

  .rc-route-weather-v232-picker label{
    display:block;
    margin-bottom:5px;
    color:#657b81;
    font-size:6.5px;
    font-weight:760;
  }

  .rc-route-weather-v232-picker input{
    width:100%;
    min-height:32px;
    box-sizing:border-box;
    padding:0 7px;
    border:1px solid rgba(46,75,79,.12);
    border-radius:8px;
    background:#fff;
    color:#29484f;
    font:inherit;
    font-size:8px;
  }

  .rc-route-weather-v232-picker-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5px;
    margin-top:6px;
  }

  .rc-route-weather-v232-picker-actions button{
    min-height:29px;
    border:1px solid rgba(46,75,79,.10);
    border-radius:8px;
    background:#fff;
    color:#4f6970;
    font:inherit;
    font-size:7px;
    font-weight:760;
  }

  .rc-route-weather-v232-loading,
  .rc-route-weather-v232-error,
  .rc-route-weather-v232-limited{
    min-height:36px;
    display:flex;
    align-items:center;
    color:#75888d;
    font-size:7px;
    line-height:1.3;
  }

  /* ==========================================================
     5) MOBILE — route alternatives
     ========================================================== */
  .rc-tourist-route-ux-v239{
    margin-top:5px;
    padding:5px;
    border-radius:9px;
  }

  .rc-tourist-route-ux-v239-head{
    padding:0 1px 4px;
  }

  .rc-tourist-route-ux-v239-head strong{
    font-size:8px;
  }

  .rc-tourist-route-ux-v239-head span{
    font-size:6px;
  }

  .rc-tourist-route-ux-v239-list{
    display:flex;
    gap:5px;
    overflow-x:auto;
    scrollbar-width:none;
    scroll-snap-type:x proximity;
  }

  .rc-tourist-route-ux-v239-list::-webkit-scrollbar{display:none}

  .rc-tourist-route-ux-v239-item{
    flex:0 0 126px;
    min-height:40px;
    grid-template-columns:17px minmax(0,1fr);
    gap:4px;
    padding:4px 5px;
    border-radius:7px;
    scroll-snap-align:start;
  }

  .rc-tourist-route-ux-v239-num{
    width:17px;height:17px;font-size:6.2px;
  }

  .rc-tourist-route-ux-v239-label{
    font-size:5.8px;
  }

  .rc-tourist-route-ux-v239-copy strong{
    font-size:7.3px;
  }

  .rc-tourist-route-ux-v239-copy small{
    font-size:5.5px;
  }

  /* ==========================================================
     6) MOBILE — actions
     ========================================================== */
  .rc-tourist-planner-v211-actions{
    gap:5px;
    margin-top:6px;
  }

  .rc-tourist-planner-v211-action{
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
    padding:0 5px;
    border-radius:9px;
    background:rgba(255,255,255,.78);
    font-size:8.5px;
    font-weight:720;
  }

  .rc-tourist-planner-v211-action .rc-planner-action-icon{
    width:15px;
    height:15px;
    flex:0 0 15px;
    display:grid;
    place-items:center;
  }

  .rc-tourist-planner-v211-action .rc-planner-action-icon svg{
    width:15px;
    height:15px;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }

  #touristPlannerClose2{
    color:#176b5c;
    background:rgba(236,249,245,.96);
    border-color:rgba(34,165,139,.18);
  }

  #touristPlannerClear{
    color:#a6534b;
    background:rgba(255,248,247,.86);
    border-color:rgba(173,78,68,.10);
  }

  .rc-tourist-planner-v211-foot{
    display:none;
  }
}

/* Very narrow phones: keep controls readable, not microscopic. */
@media (max-width:380px){
  .rc-tourist-planner-v211-mode{
    padding:0 5px;
    gap:4px;
    font-size:9.2px;
  }

  .rc-tourist-planner-v211-mode .rc-planner-mode-icon,
  .rc-tourist-planner-v211-mode .rc-planner-mode-icon svg{
    width:18px;
    height:18px;
  }

  .rc-tourist-planner-v211-action{
    padding:0 3px;
    font-size:8px;
  }

  .rc-tourist-planner-v211-action .rc-planner-action-icon,
  .rc-tourist-planner-v211-action .rc-planner-action-icon svg{
    width:14px;
    height:14px;
  }
}

/* ============================================================
   7) DESKTOP / NOTEBOOK — readability lift
   ============================================================ */
@media (min-width:821px){

  /* Weather: these were ~6–9 px and genuinely hard to read. */
  .rc-tourist-planner-v211 .rc-route-weather-v232-title{
    font-size:9.5px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-mode button{
    font-size:7.8px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-depart{
    font-size:7.7px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-hint{
    font-size:7.2px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-main b{
    font-size:10.4px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-main strong{
    font-size:14.5px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-sub{
    font-size:8.2px;
    line-height:1.28;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-point b{
    font-size:8.8px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-point em{
    font-size:6.8px;
  }

  /* Alternatives: actual useful information must be legible. */
  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239{
    padding:7px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-head strong{
    font-size:10px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-head span{
    font-size:7.8px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-item{
    min-height:47px;
    grid-template-columns:20px minmax(0,1fr);
    gap:6px;
    padding:6px 7px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-num{
    width:20px;
    height:20px;
    font-size:7.4px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-label{
    font-size:7.5px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-copy strong{
    font-size:9.8px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-copy small{
    font-size:7.3px;
    line-height:1.12;
  }

  /* Slight profile readability lift, without making the notebook card taller. */
  .rc-tourist-planner-v211 .rc-route-profile-v230-title strong{
    font-size:10.8px;
  }

  .rc-tourist-planner-v211 .rc-route-profile-v230-metrics{
    font-size:8.2px;
  }

  .rc-tourist-planner-v211 .rc-route-profile-v230-metrics b{
    font-size:8.8px;
  }

  .rc-tourist-planner-v211 .rc-route-profile-v230-axis{
    font-size:7.1px;
  }
}

/* Notebook Compact: keep the compact geometry, but stop shrinking text to 4–6 px. */
@media (min-width:821px) and (max-height:1050px){

  .rc-tourist-planner-v211 .rc-route-weather-v232-title{
    font-size:8.8px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-mode button{
    font-size:7.3px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-depart{
    font-size:7.1px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-hint{
    font-size:6.7px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-main b{
    font-size:9.3px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-main strong{
    font-size:13.1px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-sub{
    font-size:7.4px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239{
    padding:5px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-head{
    display:flex;
    padding-bottom:4px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-head strong{
    font-size:8.6px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-head span{
    font-size:6.5px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-item{
    min-height:35px;
    grid-template-columns:16px minmax(0,1fr);
    gap:4px;
    padding:4px 5px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-num{
    width:16px;height:16px;font-size:6px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-label{
    display:block;
    font-size:6.3px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-copy strong{
    font-size:8px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-copy small{
    font-size:6.1px;
  }
}

@media (min-width:821px) and (max-height:850px){

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-head{
    display:none;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-item{
    min-height:31px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-label{
    display:block;
    font-size:5.9px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-copy strong{
    font-size:7.5px;
  }

  .rc-tourist-planner-v211 .rc-tourist-route-ux-v239-copy small{
    font-size:5.8px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-main b{
    font-size:8.8px;
  }

  .rc-tourist-planner-v211 .rc-route-weather-v232-summary-sub{
    font-size:7px;
  }
}

@media (prefers-color-scheme:dark) and (max-width:820px){
  .rc-tourist-planner-v211{
    background:rgba(48,55,56,.975);
  }

  .rc-tourist-planner-v211-mode{
    background:rgba(255,255,255,.055);
    color:#c3cecc;
    border-color:rgba(255,255,255,.08);
  }

  .rc-tourist-planner-v211-mode.is-active{
    color:#d7f2eb;
    background:rgba(56,104,94,.66);
    border-color:rgba(80,187,163,.36);
  }

  .rc-tourist-planner-v211-stat,
  .rc-route-profile-v230,
  .rc-route-weather-v232-summary{
    background:rgba(255,255,255,.045);
  }
}
