/* Dedicated mobile workspace layer.
   This file is loaded after every widget theme so desktop and theme rules
   cannot collapse the mobile catalogue or full-screen widget applications. */
@media (max-width:1023px) {
  .cw-mobile-screens {
    min-height:0!important;
    overflow:hidden!important;
  }

  .cw-mobile-screen {
    top:0!important;
    bottom:0!important;
    height:100%!important;
    max-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch;
  }

  .cw-mobile-library-screen {
    display:grid!important;
    align-content:start!important;
  }

  .cw-mobile-library-screen[hidden] {
    display:none!important;
  }

  .cw-mobile-catalog-search {
    position:sticky;
    z-index:8;
    top:0;
    display:grid;
    width:100%;
    grid-template-columns:24px minmax(0,1fr);
    align-items:center;
    gap:8px;
    border:1px solid var(--line,rgba(169,180,220,.2));
    border-radius:14px;
    background:var(--card,#11182a);
    padding:0 13px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
  }

  .cw-mobile-catalog-search svg {
    width:20px;
    height:20px;
    fill:none;
    stroke:var(--muted,#909bb7);
    stroke-width:1.8;
    stroke-linecap:round;
  }

  .cw-mobile-catalog-search input {
    box-sizing:border-box;
    width:100%;
    min-width:0;
    min-height:54px;
    border:0!important;
    outline:0;
    background:transparent!important;
    color:var(--ink,#f5f7ff)!important;
    padding:10px 0!important;
    font-size:16px!important;
    line-height:1.25;
  }

  .cw-mobile-catalog-search:focus-within {
    border-color:color-mix(in srgb,var(--cw-accent,#635bff) 62%,var(--line,#fff3));
    box-shadow:0 0 0 3px color-mix(in srgb,var(--cw-accent,#635bff) 16%,transparent),0 12px 32px rgba(0,0,0,.15);
  }

  .cw-mobile-catalog {
    display:grid!important;
    width:100%;
    gap:16px;
    overflow:visible!important;
    padding:2px 0 20px;
  }

  .cw-mobile-catalog-category {
    display:grid!important;
    width:100%;
    gap:7px;
    overflow:visible!important;
  }

  .cw-mobile-catalog-category[hidden],
  .cw-mobile-catalog-item[hidden] {
    display:none!important;
  }

  .cw-mobile-catalog-category>header {
    display:flex!important;
    min-height:28px;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:0 3px;
    color:var(--cw-accent,#6578ee);
  }

  .cw-mobile-catalog-category>header span {
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
  }

  .cw-mobile-catalog-category>header b {
    display:grid;
    min-width:24px;
    height:24px;
    place-items:center;
    border-radius:999px;
    background:color-mix(in srgb,var(--cw-accent,#6578ee) 12%,var(--card,#11182a));
    color:var(--cw-accent,#6578ee);
    font-size:9px;
  }

  .cw-mobile-catalog-items {
    display:grid!important;
    width:100%;
    gap:8px;
  }

  .cw-mobile-catalog-item {
    appearance:none;
    box-sizing:border-box;
    display:grid!important;
    width:100%!important;
    min-width:0!important;
    min-height:72px!important;
    grid-template-columns:48px minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:11px!important;
    overflow:visible!important;
    border:1px solid var(--line,rgba(169,180,220,.18))!important;
    border-radius:14px!important;
    background:var(--card,#11182a)!important;
    color:var(--ink,#f5f7ff)!important;
    padding:10px 11px!important;
    text-align:left!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none;
    touch-action:manipulation!important;
    -webkit-tap-highlight-color:transparent;
  }

  .cw-mobile-catalog-item:active {
    border-color:color-mix(in srgb,var(--cw-accent,#635bff) 52%,var(--line,#fff3))!important;
    background:color-mix(in srgb,var(--cw-accent,#635bff) 9%,var(--card,#11182a))!important;
    transform:scale(.985);
  }

  .cw-mobile-catalog-item:focus-visible {
    outline:3px solid color-mix(in srgb,var(--cw-accent,#635bff) 58%,transparent);
    outline-offset:2px;
  }

  .cw-mobile-catalog-icon {
    display:grid!important;
    width:48px;
    height:48px;
    place-items:center;
    overflow:hidden;
    border:1px solid color-mix(in srgb,var(--cw-accent,#635bff) 28%,var(--line,#fff2));
    border-radius:13px;
    background:color-mix(in srgb,var(--cw-accent,#635bff) 14%,var(--card2,#151d31));
    color:var(--cw-accent,#7d76ff);
    font-size:17px;
    font-weight:900;
  }

  .cw-mobile-catalog-copy {
    display:grid!important;
    min-width:0!important;
    gap:4px;
    grid-column:auto!important;
  }

  .cw-mobile-catalog-copy strong,
  .cw-mobile-catalog-copy small {
    display:block!important;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .cw-mobile-catalog-copy strong {
    color:var(--ink,#f5f7ff)!important;
    font-size:13px;
  }

  .cw-mobile-catalog-copy small {
    color:var(--muted,#929db9)!important;
    font-size:10px;
    line-height:1.35;
  }

  .cw-mobile-catalog-add {
    display:grid!important;
    min-width:56px;
    min-height:36px;
    place-items:center;
    border-radius:10px;
    background:color-mix(in srgb,var(--cw-accent,#635bff) 13%,var(--card2,#151d31));
    color:var(--cw-accent,#7d76ff);
    padding:5px 9px;
    font-size:10px;
    font-weight:900;
  }

  .cw-mobile-catalog-item.is-premium {
    opacity:.72!important;
  }

  .cw-mobile-widget-swipe.is-just-added {
    outline:3px solid color-mix(in srgb,var(--cw-mobile-accent,#635bff) 72%,#fff);
    outline-offset:2px;
    animation:cw-mobile-added-pulse .7s ease 2;
  }

  @keyframes cw-mobile-added-pulse {
    50% { box-shadow:0 0 0 7px color-mix(in srgb,var(--cw-mobile-accent,#635bff) 18%,transparent); }
  }

  /* Opening is handled by the card/title. The old floating expand button
     duplicated that action and consumed the title's protected space. */
  .cw-mobile-open-widget {
    display:none!important;
  }

  /* Mobile card header contract: icon, flexible copy, settings and delete.
     Desktop/design-mode rules must never add a third action here. */
  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head {
    box-sizing:border-box;
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    align-items:center!important;
    gap:8px!important;
    padding:8px 10px!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head>.cw-widget-title-open {
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    flex:1 1 auto!important;
    align-items:center!important;
    gap:8px!important;
    overflow:hidden!important;
    border:0!important;
    background:transparent!important;
    padding:0!important;
    box-shadow:none!important;
    text-align:left!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head .cw-widget-title-icon {
    display:grid!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    flex:0 0 36px!important;
    place-items:center!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head .cw-widget-title-copy {
    display:grid!important;
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    flex:1 1 auto!important;
    align-content:center!important;
    place-items:initial!important;
    gap:2px!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    padding:0!important;
    box-shadow:none!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head .cw-widget-title-copy>:is(h3,small) {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    margin:0!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head>.cw-widget-actions {
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    height:auto!important;
    flex:0 0 auto!important;
    align-items:center!important;
    gap:2px!important;
    opacity:1!important;
    visibility:visible!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head>.cw-widget-actions>:is(.cw-open-app,.cw-header-pin) {
    display:none!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head>.cw-widget-actions>:is(.cw-widget-settings-entry,.cw-header-delete) {
    display:grid!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    place-items:center!important;
    border:0!important;
    border-radius:10px!important;
    background:transparent!important;
    padding:0!important;
    box-shadow:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head .cw-widget-settings-entry {
    color:#315a9a!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head .cw-header-delete {
    color:#bd3f48!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head .cw-widget-settings-entry svg,
  .cw-widget-app-dialog .cw-app-settings-button svg {
    width:18px!important;
    height:18px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  .cw-page .cw-mobile-widget-feed .cw-widget>.cw-widget-head .cw-header-delete svg {
    width:16px!important;
    height:16px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.9!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }

  /* Full apps use the same protected title construction. Back remains the
     navigation affordance; settings and delete stay compact and predictable. */
  .cw-widget-app-dialog .cw-widget-app-head {
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    align-items:center!important;
    gap:7px!important;
    padding:max(9px,env(safe-area-inset-top)) 9px 9px!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head>.cw-widget-title {
    display:flex!important;
    width:auto!important;
    min-width:0!important;
    flex:1 1 auto!important;
    align-items:center!important;
    gap:8px!important;
    overflow:hidden!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head .cw-widget-title-icon {
    display:grid!important;
    width:36px!important;
    min-width:36px!important;
    height:36px!important;
    min-height:36px!important;
    flex:0 0 36px!important;
    place-items:center!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head .cw-widget-title-copy {
    display:grid!important;
    width:auto!important;
    min-width:0!important;
    flex:1 1 auto!important;
    gap:2px!important;
    overflow:hidden!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head .cw-widget-title-copy>:is(h2,small) {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    margin:0!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head>div:last-child {
    display:flex!important;
    min-width:0!important;
    flex:0 0 auto!important;
    align-items:center!important;
    gap:3px!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head .cw-app-manage {
    display:none!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head :is(.cw-app-settings-button,.cw-app-delete-button) {
    display:grid!important;
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
    place-items:center!important;
    padding:0!important;
  }

  .cw-widget-app-dialog .cw-widget-app-head .cw-app-close {
    width:auto!important;
    min-width:58px!important;
    min-height:40px!important;
    padding:0 9px!important;
  }

  @media(max-width:430px){
    .cw-widget-app-dialog .cw-widget-app-head .cw-widget-title-icon,
    .cw-widget-app-dialog .cw-widget-app-head .cw-widget-title-copy small{display:none!important}
    .cw-widget-app-dialog .cw-widget-app-worldradio .cw-widget-app-head .cw-widget-title-copy .cw-worldradio-header-station{
      display:block!important;
      width:min(145px,37vw)!important;
      font-size:9px!important;
    }
    .cw-widget-app-dialog .cw-widget-app-head :is(.cw-app-settings-button,.cw-app-delete-button){
      width:38px!important;
      min-width:38px!important;
      height:38px!important;
      min-height:38px!important;
    }
    .cw-widget-app-dialog .cw-widget-app-head .cw-app-close{
      min-width:50px!important;
      min-height:38px!important;
      padding:0 7px!important;
    }
  }

  .cw-widget-app-dialog .cw-widget-app-body {
    display:block!important;
    min-width:0!important;
    min-height:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    padding:12px 10px calc(24px + env(safe-area-inset-bottom))!important;
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch;
  }

  .cw-widget-app-dialog .cw-app-workspace,
  .cw-widget-app-dialog .cw-mobile-full-app {
    box-sizing:border-box;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app>* {
    box-sizing:border-box;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(input[type=text],input[type=search],input[type=url],input[type=email],input[type=number],input[type=date],input[type=time],input[type=datetime-local],select,textarea,[contenteditable=true]) {
    max-width:100%;
    font-size:16px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-todo-app,.cw-notes-app) {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-app-navigation {
    max-height:none!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-task-views {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-productivity-tip {
    display:none;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-app-primary {
    min-width:0!important;
    overflow:visible!important;
    padding:14px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-todo-command {
    align-items:flex-start;
    flex-direction:column;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-todo-kpis {
    width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-todo-quick-capture,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-todo-capture-options {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-notes-studio-app,.cw-tracker-studio,.cw-launchpad-app,.cw-daily-studio,.cw-music-app,.cw-weather-studio,.cw-countdown-reference-app,.cw-timer-reference-app) {
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-width:0!important;
    min-height:0!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-music-app,.cw-weather-studio,.cw-tracker-studio) {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-tracker-tabs {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-habit-welcome,.cw-goal-welcome) {
    align-items:flex-start;
    flex-direction:column;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-studio-composer,.cw-habit-checkin-form,.cw-goal-milestone-form,.cw-goal-reviews>form) {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-studio-composer,.cw-habit-checkin-form,.cw-goal-milestone-form,.cw-goal-reviews>form)>* {
    grid-column:1!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-hero {
    align-items:flex-start;
    flex-direction:column;
    padding:16px;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-kpis {
    display:grid;
    width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-kpis span {
    min-width:0;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-command,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-add {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-command>*,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-add>* {
    grid-column:1!important;
    grid-row:auto!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-launchpad-app-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-daily-today {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-daily-stage {
    min-height:420px!important;
    padding:18px;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-daily-styles {
    overflow-x:auto;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-app.cw-productivity-studio {
    display:grid!important;
    height:auto!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-command {
    position:static!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:10px!important;
    padding:14px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-command>* {
    grid-column:1!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-view-tabs,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-sets {
    display:flex!important;
    width:100%;
    overflow-x:auto!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-workbench {
    display:grid!important;
    height:auto!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-large {
    min-height:470px!important;
    overflow:visible!important;
    padding:12px 8px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-large .cw-calendar-month-view {
    height:auto!important;
    min-height:440px!important;
    grid-template-rows:auto auto minmax(340px,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calendar-agenda {
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    padding:14px 8px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-timer-reference-large {
    height:auto!important;
    min-height:0!important;
    grid-template-rows:auto auto auto!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-timer-ref-large-grid {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-timer-ref-rail {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:none!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-timer-ref-side,.cw-timer-ref-lower,.cw-timer-reference-support) {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-countdown-reference-app,.cw-countdown-reference-large) {
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-countdown-reference-large {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-weather-app-nav {
    border-right:0;
    border-bottom:1px solid var(--line);
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-weather-command {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-weather-command>* {
    grid-column:1!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-reference-studio {
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-reference-boxes {
    max-height:300px;
    border-right:0;
    border-bottom:1px solid var(--line);
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-reference-board-stage {
    min-height:440px;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-reference-inspector {
    border-top:1px solid var(--line);
    border-left:0;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-finance-studio,.cw-calculator-studio,.cw-stock-studio,.cw-football-studio) {
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-finance-nav,.cw-calculator-studio>aside,.cw-football-app-nav) {
    gap:10px;
    border-right:0;
    border-bottom:1px solid #ffffff12;
    padding:12px;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-finance-nav nav,.cw-calculator-studio>aside nav,.cw-football-app-nav nav) {
    display:flex;
    overflow-x:auto;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-finance-nav nav button,.cw-calculator-studio>aside nav button,.cw-football-app-nav nav button) {
    flex:0 0 auto;
    white-space:nowrap;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-finance-nav footer,.cw-football-app-nav footer) {
    display:none;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-finance-studio>main,.cw-calculator-studio>main,.cw-stock-studio>main,.cw-football-studio>main) {
    min-width:0!important;
    overflow:visible!important;
    padding:13px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app :is(.cw-market-command,.cw-market-alerts-panel>header,.cw-market-styles-panel>header,.cw-stock-command,.cw-stock-library-view>header,.cw-football-app-head,.cw-converter-hero) {
    align-items:flex-start;
    flex-direction:column;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-market-add,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-market-add>form,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-calculator-workbench,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-calculator-workbench>form,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-studio>main,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-studio>main>aside,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-studio>main>aside form,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-pickers,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-asset-picker>form,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-football-app-content {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-market-add>form>*,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-calculator-workbench>form>*,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-asset-picker>form>* {
    grid-column:1!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-market-board-live {
    overflow-x:auto!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-market-board-live .cw-market-asset {
    min-width:315px;
    grid-template-columns:28px minmax(100px,1fr) auto 48px 28px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-market-board-live .cw-market-asset :is(dl,.cw-market-cap) {
    display:none!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-studio {
    min-height:0!important;
    padding:13px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-converter-pickers>button {
    justify-self:center;
    align-self:center;
    transform:rotate(90deg);
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-calculator-answer dl,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-calculator-history-panel>div {
    grid-template-columns:minmax(0,1fr)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-breathing-app-v3 {
    height:auto!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-breathing-app-v3 .cw-breathing-app-stage {
    min-height:560px!important;
    overflow:visible!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-breathing-app-v3 .cw-breathing-large>section {
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
    padding:14px 8px;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-breathing-app-v3 .cw-breathing-visual {
    width:min(210px,70vw)!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-breathing-warning,
  .cw-widget-app-dialog .cw-mobile-full-app .cw-breathing-complete {
    position:relative;
    inset:auto;
    margin:12px;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-lemur-game-app {
    min-height:0!important;
    grid-template-rows:auto minmax(420px,1fr) auto!important;
    padding:12px!important;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-lemur-game-app>header {
    align-items:flex-start;
    flex-direction:column;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-lemur-game-app-scores {
    display:grid;
    width:100%;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-lemur-game-app-scores span {
    min-width:0;
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-lemur-game-stage-actions {
    display:grid;
    width:calc(100% - 24px);
    grid-template-columns:minmax(0,1fr);
  }

  .cw-widget-app-dialog .cw-mobile-full-app .cw-lemur-game-stage-actions button {
    width:100%;
    min-width:0;
  }

  /* The receiver's mobile card is a real medium composition, not a desktop
     player squeezed into the default 220px feed slot. */
  .cw-mobile-widget-swipe[data-mobile-widget-type=worldradio] {
    height:310px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio>.cw-widget-body {
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:9px 10px 11px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium {
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr) 42px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-nav {
    grid-column:2!important;
    grid-row:1!important;
    gap:4px!important;
    border-right:0!important;
    border-left:1px solid rgba(38,54,80,.14)!important;
    padding:5px 4px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-screen {
    grid-column:1!important;
    grid-row:1!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-nav i {
    width:27px!important;
    height:27px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-player {
    grid-template-columns:82px minmax(0,1fr)!important;
    grid-template-rows:minmax(42px,1fr) auto auto auto!important;
    align-content:stretch!important;
    gap:6px 9px!important;
    overflow:hidden!important;
    padding:9px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-art-wrap {
    width:78px!important;
    height:78px!important;
    grid-row:1/3!important;
    align-self:center!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-copy {
    width:100%!important;
    min-width:0!important;
    align-self:end!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-copy strong {
    font-size:15px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-controls {
    grid-column:2!important;
    align-self:start!important;
    flex-wrap:nowrap!important;
    gap:4px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-controls button {
    width:29px!important;
    min-width:29px!important;
    height:29px!important;
    min-height:29px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-controls .cw-radio-tool-play {
    width:36px!important;
    min-width:36px!important;
    height:33px!important;
    min-height:33px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium :is(.cw-radio-tool-volume,.cw-radio-tool-details) {
    grid-column:1/-1!important;
    min-width:0!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-details {
    gap:4px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium .cw-radio-tool-details>div {
    min-width:0!important;
    padding:4px 5px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium :is(.cw-radio-tool-library,.cw-radio-tool-countries) {
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:9px!important;
  }

  .cw-mobile-widget-feed .cw-widget-worldradio .cw-radio-tool-medium :is(.cw-radio-tool-stations,.cw-radio-tool-countries>div) {
    min-height:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
  }

  /* World Radio is a receiver with its own internal scroll surfaces. Keep the
     player and five-mode navigation fixed to the mobile app viewport. */
  .cw-widget-app-worldradio {
    grid-template-columns:minmax(0,1fr)!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-widget-app-body {
    display:grid!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:100%!important;
    max-height:100%!important;
    grid-template-rows:minmax(0,1fr)!important;
    overflow:hidden!important;
    padding:0!important;
  }

  .cw-widget-app-worldradio .cw-app-workspace,
  .cw-widget-app-worldradio .cw-mobile-full-app {
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-mobile-full-app>.cw-radio-device {
    width:100%!important;
    max-width:100%!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr) 58px!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-main {
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:118px minmax(0,1fr)!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player {
    box-sizing:border-box;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player .cw-worldradio-layout {
    box-sizing:border-box;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player .cw-worldradio-feature {
    width:100%!important;
    min-width:0!important;
    grid-template-columns:48px minmax(0,1fr) auto!important;
    gap:7px!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player .cw-worldradio-copy {
    width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player .cw-worldradio-copy>* {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player .cw-worldradio-controls {
    min-width:0!important;
    flex-wrap:nowrap!important;
    gap:3px!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player .cw-worldradio-controls button {
    width:30px!important;
    min-width:30px!important;
    height:30px!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-player .cw-worldradio-controls .cw-worldradio-play {
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-content {
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }

  .cw-widget-app-worldradio .cw-radio-device-content>.cw-radio-device-screen {
    box-sizing:border-box;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }

  .cw-widget-app-dialog.is-showing-app-settings .cw-widget-app-worldradio .cw-widget-app-body {
    display:block!important;
    overflow-y:auto!important;
    padding:12px 10px calc(24px + env(safe-area-inset-bottom))!important;
  }
}

@media (max-width:430px) {
  .cw-mobile-catalog-copy small {
    white-space:normal;
  }

  .cw-mobile-catalog-item {
    grid-template-columns:44px minmax(0,1fr) auto!important;
    padding-inline:9px!important;
  }

  .cw-mobile-catalog-icon {
    width:44px;
    height:44px;
  }

  .cw-mobile-catalog-add {
    min-width:48px;
    padding-inline:7px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .cw-mobile-widget-swipe.is-just-added {
    animation:none;
  }
}
