/* Discovery controls sit outside the recreated desktop. */
.p-demo-assist { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 15px; }
.p-site .p-desktop-tour { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 42px; padding: 5px 12px 5px 6px; border: 1px solid var(--p-rule); border-radius: 99px; background: var(--p-surface); color: var(--p-ink); font-size: 11px; white-space: nowrap; }
.p-tour-symbol { display: grid; place-items: center; flex-shrink: 0; width: 29px; height: 29px; border: 1px solid var(--p-rule); border-radius: 50%; background: var(--p-paper); color: var(--p-accent); }
.p-tour-symbol>svg { width: 18px; height: 18px; fill: currentColor; }
.p-tour-stop { display: none; }
.p-desktop-tour[aria-pressed='true'] .p-tour-play { display: none; }
.p-desktop-tour[aria-pressed='true'] .p-tour-stop { display: block; }
.p-tour-count { min-width: 38px; padding-left: 10px; margin-left: 3px; border-left: 1px solid var(--p-rule); color: var(--p-muted); font-size: 9px; text-align: center; }
.p-site .p-desktop-tour[aria-pressed='true'] { border-color: var(--p-accent); }
.p-demo-tabs[data-tour-running]>button[aria-pressed='true']::after { content: ''; position: absolute; right: 9px; bottom: 2px; left: 9px; height: 2px; border-radius: 2px; background: var(--p-accent); transform-origin: left; }
@media (hover:hover) { .p-site .p-desktop-tour:hover { border-color: var(--p-accent); background: var(--p-paper); } }
.p-site .p-desktop-tour:active { box-shadow: inset 0 1px 4px #142d281c; }
@media (prefers-reduced-motion:no-preference) {
  .p-site .p-desktop-tour { transition: background-color 180ms var(--p-ease-out),border-color 180ms var(--p-ease-out),box-shadow 180ms var(--p-ease-out); }
  .p-demo-tabs[data-tour-running]>button[aria-pressed='true']::after { animation: p-tour-dwell 4400ms linear both; }
  @keyframes p-tour-dwell { from { transform: scaleX(0); } to { transform: scaleX(1); } }
}
@media (max-width:1200px) { .p-demo-assist .p-demo-hint { display: none; } }
@media (max-width:760px) { .p-demo-assist { justify-content: space-between; }.p-demo-assist .p-demo-hint { display: flex; font-size: 9px; }.p-site .p-desktop-tour { font-size: 10px; } }
@media (max-width:600px) { .p-demo-assist { justify-content: flex-end; }.p-demo-assist .p-demo-hint { display: none; } }
@media (max-width:420px) { .p-demo-assist { justify-content: center; }.p-demo-assist .p-demo-hint { display: none; }.p-site .p-desktop-tour { width: 100%; }.p-demo-tabs>button { gap: 7px; padding-inline: 9px; font-size: 10px; }.p-demo-tabs>button>span { white-space: nowrap; } }
@media print { .p-desktop-tour { display: none !important; } }

/* QML pixels, projected from the real 1920px desktop. The panel never owns a container. */
.p-desktop-surface {
  --desk-px: .0520833333cqw;
  --desk-ink: var(--desk-fg, #e6e5de);
  --desk-muted-ink: color-mix(in srgb, var(--desk-ink) 72%, var(--desk-bg, #000));
  --desk-faint: color-mix(in srgb, var(--desk-ink) 52%, var(--desk-bg, #000));
  --desk-fill: color-mix(in srgb, var(--desk-ink) 5.5%, transparent);
  --desk-hover: color-mix(in srgb, var(--desk-ink) 9%, transparent);
  --desk-rule: color-mix(in srgb, var(--desk-ink) 10%, transparent);
  --os-accent: var(--desk-accent, var(--p-swatch-2));
  min-width: 0;
  background: var(--desk-bg, #000);
  color: var(--desk-ink);
  text-align: left;
  font: 400 calc(14 * var(--desk-px))/1.25 var(--desk-font, var(--p-sans));
  font-variant-numeric: tabular-nums;
  -webkit-font-smoothing: antialiased;
}
.p-desktop-surface :is(button, input, output, kbd) { font: inherit; }
.p-desktop-surface :is(button, input) { color: inherit; }
.p-desktop-surface button { min-width: 0; margin: 0; cursor: pointer; }
.p-desktop-surface :is(button, input):focus-visible { outline: max(1px, calc(2 * var(--desk-px))) solid var(--os-accent); outline-offset: max(1px, calc(2 * var(--desk-px))); }
.p-desktop-surface :disabled { opacity: .4; cursor: default; }
.p-desktop-surface svg { display: block; flex-shrink: 0; width: calc(16 * var(--desk-px)); height: calc(16 * var(--desk-px)); fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.p-desktop-text-button { display: inline-flex; align-items: center; gap: calc(6 * var(--desk-px)); padding: calc(4 * var(--desk-px)) 0; border: 0; border-radius: calc(4 * var(--desk-px)); background: transparent; color: var(--desk-muted-ink) !important; font-size: calc(12 * var(--desk-px)) !important; white-space: nowrap; }

/* ControlPanel.qml: 1080×526; 24/22px sides, 20px top/bottom.
   260px player + 410px controls + 282px notifications, with 20/1/20 separators. */
.p-control-centre { padding: calc(20 * var(--desk-px)) calc(22 * var(--desk-px)) calc(20 * var(--desk-px)) calc(24 * var(--desk-px)); }
.p-control-grid { display: grid; grid-template-columns: minmax(0, 260fr) minmax(0, 410fr) minmax(0, 282fr); gap: calc(41 * var(--desk-px)); min-height: calc(486 * var(--desk-px)); align-items: stretch; }
.p-control-music { display: flex; flex-direction: column; align-items: center; min-width: 0; padding: calc(22 * var(--desk-px)) calc(22 * var(--desk-px)) calc(18 * var(--desk-px)); text-align: center; }
.p-control-art { display: grid; place-items: center; flex-shrink: 0; width: calc(166 * var(--desk-px)); max-width: 100%; aspect-ratio: 1; overflow: hidden; border-radius: calc(18 * var(--desk-px)); background: var(--desk-fill); color: var(--desk-faint); }
.p-control-art>svg { width: calc(48 * var(--desk-px)); height: calc(48 * var(--desk-px)); stroke-width: 1.15; }
.p-control-song { display: flex; flex-direction: column; gap: calc(2 * var(--desk-px)); width: 100%; margin-top: calc(14 * var(--desk-px)); }
.p-control-song strong { overflow: hidden; font-size: calc(16 * var(--desk-px)); font-weight: 550; text-overflow: ellipsis; white-space: nowrap; }
.p-control-song>span { color: var(--desk-muted-ink); font-size: calc(12 * var(--desk-px)); }
.p-player-state { margin-top: calc(6 * var(--desk-px)); color: var(--desk-faint); font-size: calc(10 * var(--desk-px)); }
.p-player-state>span:last-child { display: none; }
.p-control-music:has([data-demo-play][aria-pressed='true']) .p-player-state>span:first-child { display: none; }
.p-control-music:has([data-demo-play][aria-pressed='true']) .p-player-state>span:last-child { display: inline; }
.p-music-timeline { width: 100%; margin-top: calc(18 * var(--desk-px)); color: var(--desk-faint); font-size: calc(10 * var(--desk-px)); }
.p-music-timeline>i { display: block; height: calc(3 * var(--desk-px)); overflow: hidden; border-radius: 999px; background: var(--desk-rule); }
.p-music-timeline b { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--os-accent); }
.p-music-timeline>div { display: flex; justify-content: space-between; margin-top: calc(6 * var(--desk-px)); }
.p-music-transport { display: flex; align-items: center; justify-content: center; gap: calc(22 * var(--desk-px)); width: 100%; min-height: calc(52 * var(--desk-px)); margin-top: calc(4 * var(--desk-px)); }
.p-music-transport>button { display: grid; place-items: center; width: calc(34 * var(--desk-px)); height: calc(34 * var(--desk-px)); padding: calc(6 * var(--desk-px)); border: 0; border-radius: calc(12 * var(--desk-px)); background: transparent; color: var(--desk-muted-ink); }
.p-music-transport svg { width: calc(19 * var(--desk-px)); height: calc(19 * var(--desk-px)); }
.p-music-transport .p-music-play svg { width: calc(24 * var(--desk-px)); height: calc(24 * var(--desk-px)); }
.p-music-play-icon { fill: currentColor !important; stroke-width: 0 !important; }
.p-music-pause-icon { display: none !important; stroke-width: 3 !important; }
.p-music-play[aria-pressed='true'] .p-music-play-icon { display: none; }
.p-music-play[aria-pressed='true'] .p-music-pause-icon { display: block !important; }
.p-music-spectrum { display: flex; align-items: flex-end; justify-content: center; gap: calc(3 * var(--desk-px)); width: 100%; height: calc(54 * var(--desk-px)); margin-top: auto; padding-top: calc(12 * var(--desk-px)); }
.p-music-spectrum>i { flex: 1; max-width: calc(4 * var(--desk-px)); height: max(1px, calc(2 * var(--desk-px))); border-radius: 999px; background: var(--os-accent); opacity: .25; }
.p-demo[data-playing='true'] .p-music-spectrum>i { height: 35%; opacity: .65; }
.p-demo[data-playing='true'] .p-music-spectrum>i:nth-child(3n) { height: 74%; }
.p-demo[data-playing='true'] .p-music-spectrum>i:nth-child(4n) { height: 48%; }
.p-demo[data-playing='true'] .p-music-spectrum>i:nth-child(7n) { height: 95%; }
.p-control-settings, .p-control-side { position: relative; min-width: 0; }
.p-control-settings::before, .p-control-side::before { content: ''; position: absolute; top: 0; bottom: 0; left: calc(-21 * var(--desk-px)); width: max(.5px, var(--desk-px)); background: var(--desk-rule); }
.p-control-settings { display: flex; flex-direction: column; gap: calc(14 * var(--desk-px)); }
.p-control-slider { display: flex; align-items: center; gap: calc(10 * var(--desk-px)); min-height: calc(18 * var(--desk-px)); }
.p-control-slider>svg { width: calc(18 * var(--desk-px)); height: calc(18 * var(--desk-px)); }
.p-control-slider output { width: calc(34 * var(--desk-px)); flex-shrink: 0; color: var(--desk-muted-ink); font-size: calc(11 * var(--desk-px)); text-align: right; }
.p-desktop-range { flex: 1; width: 100%; min-width: 0; height: calc(18 * var(--desk-px)); padding: 0; margin: 0; border: 0; border-radius: 999px; background: transparent; accent-color: var(--os-accent); cursor: pointer; appearance: none; }
.p-desktop-range::-webkit-slider-runnable-track { height: max(2px, calc(6 * var(--desk-px))); border-radius: 999px; background: linear-gradient(90deg, var(--os-accent) var(--range-value), var(--desk-fill) var(--range-value)); }
.p-desktop-range::-webkit-slider-thumb { width: calc(11 * var(--desk-px)); height: calc(11 * var(--desk-px)); margin-top: calc(-2.5 * var(--desk-px)); border: 0; border-radius: 50%; background: var(--desk-ink); appearance: none; }
.p-desktop-range::-moz-range-track { height: max(2px, calc(6 * var(--desk-px))); border-radius: 999px; background: var(--desk-fill); }
.p-desktop-range::-moz-range-progress { height: max(2px, calc(6 * var(--desk-px))); border-radius: 999px; background: var(--os-accent); }
.p-desktop-range::-moz-range-thumb { width: calc(11 * var(--desk-px)); height: calc(11 * var(--desk-px)); border: 0; border-radius: 50%; background: var(--desk-ink); }
.p-quick-settings { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: calc(10 * var(--desk-px)); margin-top: calc(2 * var(--desk-px)); }
.p-quick-settings>button { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: calc(2 * var(--desk-px)); min-height: calc(58 * var(--desk-px)); padding: calc(7 * var(--desk-px)) calc(2 * var(--desk-px)); border: 0; border-radius: calc(14 * var(--desk-px)); background: var(--desk-fill); color: var(--desk-muted-ink); }
.p-quick-settings>button>span { max-width: 100%; overflow: hidden; font-size: calc(10 * var(--desk-px)); line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.p-quick-settings>button[aria-pressed='true'] { background: color-mix(in srgb, var(--os-accent) 30%, transparent); color: var(--desk-ink); }
.p-control-team { margin-block: auto; padding: calc(9 * var(--desk-px)) calc(10 * var(--desk-px)) calc(9 * var(--desk-px)) calc(12 * var(--desk-px)); min-height: calc(135 * var(--desk-px)); border: 1px solid var(--desk-rule); border-radius: calc(13 * var(--desk-px)); background: var(--desk-fill); }
.p-control-team>header { display: flex; align-items: center; gap: calc(8 * var(--desk-px)); color: var(--desk-muted-ink); font-size: calc(10 * var(--desk-px)); }
.p-control-team>header>strong { font-weight: 550; color: var(--desk-ink); }
.p-control-team>header>span { flex: 1; overflow: hidden; font-size: calc(8 * var(--desk-px)); text-overflow: ellipsis; white-space: nowrap; }
.p-control-team>header>button { border: 0; border-radius: calc(4 * var(--desk-px)); background: transparent; color: var(--desk-faint); font-size: calc(20 * var(--desk-px)); line-height: .8; }
.p-control-team>div { display: flex; align-items: center; justify-content: space-between; gap: calc(4 * var(--desk-px)); padding-block: calc(12 * var(--desk-px)) calc(6 * var(--desk-px)); }
.p-control-team>div>button { position: relative; display: flex; flex: 1; flex-direction: column; align-items: center; gap: calc(6 * var(--desk-px)); padding: 0; border: 0; border-radius: calc(5 * var(--desk-px)); background: transparent; }
.p-control-team img { display: block; width: calc(36 * var(--desk-px)); height: calc(36 * var(--desk-px)); max-width: 100%; object-fit: contain; image-rendering: pixelated; }
.p-control-team>div>button>i { width: 72%; height: max(1px, calc(3 * var(--desk-px))); border-radius: 999px; background: var(--os-accent); opacity: .35; }
.p-control-team>div>button[aria-pressed='true']>i { opacity: 1; }
.p-control-team>footer { display: flex; justify-content: space-between; gap: calc(6 * var(--desk-px)); color: var(--desk-faint); font-size: calc(9 * var(--desk-px)); }
.p-control-weather { display: flex; align-items: center; gap: calc(16 * var(--desk-px)); min-height: calc(16 * var(--desk-px)); color: var(--desk-muted-ink); font-size: calc(12 * var(--desk-px)); }
.p-control-weather>small { color: var(--desk-faint); font-size: calc(11 * var(--desk-px)); }
.p-control-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: calc(12 * var(--desk-px)); }
.p-control-links>button { display: flex; align-items: center; justify-content: space-between; gap: calc(8 * var(--desk-px)); min-height: calc(42 * var(--desk-px)); padding: calc(6 * var(--desk-px)) calc(10 * var(--desk-px)) calc(6 * var(--desk-px)) calc(12 * var(--desk-px)); border: 1px solid var(--desk-rule); border-radius: calc(13 * var(--desk-px)); background: var(--desk-fill); text-align: left; }
.p-control-links>button>span:first-child { display: flex; flex: 1; flex-direction: column; gap: calc(1 * var(--desk-px)); min-width: 0; }
.p-control-links strong { font-size: calc(10 * var(--desk-px)); font-weight: 550; }
.p-control-links small { overflow: hidden; color: var(--desk-faint); font-size: calc(8 * var(--desk-px)); text-overflow: ellipsis; white-space: nowrap; }
.p-control-links>button>span:last-child { color: var(--desk-faint); font-size: calc(20 * var(--desk-px)); line-height: 1; }
.p-github-mini { display: grid; grid-template-columns: repeat(7, 1fr); gap: var(--desk-px); flex-shrink: 0; }
.p-github-mini>i { width: calc(3 * var(--desk-px)); height: calc(3 * var(--desk-px)); border-radius: var(--desk-px); background: var(--os-accent); opacity: .3; }
.p-github-mini>i:nth-child(3n) { opacity: .65; }
.p-control-side { display: flex; flex-direction: column; gap: calc(8 * var(--desk-px)); }
.p-notifications-heading { display: flex; align-items: center; justify-content: space-between; gap: calc(8 * var(--desk-px)); min-height: calc(20 * var(--desk-px)); padding-right: calc(24 * var(--desk-px)); }
.p-notifications-heading>strong { font-size: calc(12 * var(--desk-px)); font-weight: 550; }
.p-notifications-heading>button { display: grid; place-items: center; width: calc(20 * var(--desk-px)); height: calc(20 * var(--desk-px)); padding: calc(2 * var(--desk-px)); border: 0; border-radius: calc(5 * var(--desk-px)); background: transparent; color: var(--desk-faint); }
.p-control-notification { display: flex; align-items: flex-start; gap: calc(11 * var(--desk-px)); padding: calc(10 * var(--desk-px)) calc(10 * var(--desk-px)) calc(10 * var(--desk-px)) calc(12 * var(--desk-px)); border-radius: calc(14 * var(--desk-px)); background: var(--desk-fill); }
.p-notification-symbol { width: calc(22 * var(--desk-px)); flex-shrink: 0; color: var(--os-accent); font-size: calc(18 * var(--desk-px)); }
.p-control-notification>div { display: flex; flex: 1; flex-direction: column; gap: calc(3 * var(--desk-px)); min-width: 0; }
.p-notification-source { display: flex; justify-content: space-between; gap: calc(6 * var(--desk-px)); margin-bottom: calc(3 * var(--desk-px)); color: var(--desk-faint); font-size: calc(10 * var(--desk-px)); }
.p-notification-source>small { font-size: inherit; }
.p-control-notification strong { font-size: calc(12 * var(--desk-px)); font-weight: 500; }
.p-control-notification div>span:last-child { color: var(--desk-muted-ink); font-size: calc(11 * var(--desk-px)); line-height: 1.4; }
.p-notifications-empty { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; gap: calc(10 * var(--desk-px)); color: var(--desk-faint); font-size: calc(12 * var(--desk-px)); }
.p-notifications-empty>svg { width: calc(24 * var(--desk-px)); height: calc(24 * var(--desk-px)); }

/* LauncherPanel.qml: 660px wide, 50px search, 58+12px favourites, 48px rows. */
.p-native-launcher { padding: calc(4 * var(--desk-px)) 0 calc(12 * var(--desk-px)); }
.p-launcher-search { display: flex; align-items: center; gap: calc(12 * var(--desk-px)); min-height: calc(51 * var(--desk-px)); margin: 0 calc(22 * var(--desk-px)) calc(6 * var(--desk-px)); padding-right: calc(22 * var(--desk-px)); border-bottom: 1px solid var(--desk-rule); }
.p-launcher-search>svg { width: calc(17 * var(--desk-px)); height: calc(17 * var(--desk-px)); color: var(--desk-faint); }
.p-launcher-search>input { flex: 1; width: 100%; min-width: 0; padding: calc(8 * var(--desk-px)) 0; border: 0; border-radius: calc(3 * var(--desk-px)); background: transparent; color: var(--desk-ink); outline: none; font-size: calc(16 * var(--desk-px)); }
.p-launcher-search>input::placeholder { color: var(--desk-faint); opacity: 1; }
.p-launcher-search>input:focus-visible { outline: none; }
.p-launcher-search:focus-within>svg { color: var(--os-accent); }
.p-launcher-search:focus-within { border-bottom-color: color-mix(in srgb, var(--os-accent) 50%, transparent); }
.p-launcher-modes { display: flex; align-items: center; flex-shrink: 0; gap: calc(3 * var(--desk-px)); }
.p-launcher-modes>button { display: grid; place-items: center; min-width: calc(22 * var(--desk-px)); min-height: calc(24 * var(--desk-px)); padding: calc(3 * var(--desk-px)) calc(5 * var(--desk-px)); border: 0; border-radius: calc(5 * var(--desk-px)); background: transparent; color: var(--desk-faint); font-size: calc(11 * var(--desk-px)); }
.p-launcher-modes>button[aria-pressed='true'] { background: var(--desk-fill); color: var(--desk-ink); }
.p-launcher-favourites { display: flex; align-items: center; height: calc(58 * var(--desk-px)); margin: 0 calc(12 * var(--desk-px)) calc(12 * var(--desk-px)); }
.p-launcher-favourites>button { display: grid; place-items: center; width: calc(58 * var(--desk-px)); height: calc(58 * var(--desk-px)); padding: calc(12 * var(--desk-px)); border: 0; border-radius: calc(15 * var(--desk-px)); background: transparent; }
.p-app-icon { display: block; flex-shrink: 0; width: calc(30 * var(--desk-px)); height: calc(30 * var(--desk-px)); border: 0; background: transparent; object-fit: contain; }
.p-launcher-favourites .p-app-icon { width: calc(34 * var(--desk-px)); height: calc(34 * var(--desk-px)); }
.p-launcher-apps { display: flex; flex-direction: column; padding-inline: calc(12 * var(--desk-px)); }
.p-launcher-apps>button, .p-launcher-secondary>button { display: flex; align-items: center; gap: calc(13 * var(--desk-px)); width: 100%; min-height: calc(48 * var(--desk-px)); padding: calc(5 * var(--desk-px)) calc(14 * var(--desk-px)) calc(5 * var(--desk-px)) calc(12 * var(--desk-px)); border: 0; border-radius: calc(12 * var(--desk-px)); background: transparent; text-align: left; }
.p-launcher-apps>button:is(.is-selected, [aria-selected='true'], [data-selected]) { background: color-mix(in srgb, var(--os-accent) 20%, transparent); }
.p-launcher-app-copy { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.p-launcher-app-copy>strong { overflow: hidden; font-size: calc(13 * var(--desk-px)); font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.p-launcher-app-copy>span { overflow: hidden; color: var(--desk-muted-ink); font-size: calc(11 * var(--desk-px)); text-overflow: ellipsis; white-space: nowrap; }
.p-launcher-enter { width: calc(18 * var(--desk-px)); flex-shrink: 0; margin-left: auto; color: var(--os-accent); font-size: calc(13 * var(--desk-px)); opacity: 0; }
.p-launcher-apps>button:is(.is-selected, [aria-selected='true'], [data-selected], :focus-visible) .p-launcher-enter { opacity: 1; }
.p-launcher-empty { display: grid; place-items: center; min-height: calc(46 * var(--desk-px)); color: var(--desk-muted-ink); font-size: calc(13 * var(--desk-px)); }
.p-launcher-secondary { padding-inline: calc(12 * var(--desk-px)); }
.p-launcher-secondary>button>span:nth-child(2) { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.p-launcher-secondary strong { overflow: hidden; font-size: calc(13 * var(--desk-px)); font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.p-launcher-secondary small { color: var(--desk-muted-ink); font-size: calc(11 * var(--desk-px)); }
.p-launcher-secondary>button>span:last-child { color: var(--os-accent); font-size: calc(13 * var(--desk-px)); }
.p-clipboard-symbol { display: grid; place-items: center; width: calc(30 * var(--desk-px)); height: calc(40 * var(--desk-px)); color: var(--desk-faint); font: calc(17 * var(--desk-px)) var(--desk-mono, var(--p-mono)); }
.p-window-workspace { padding: calc(4 * var(--desk-px)) calc(6 * var(--desk-px)); border-radius: calc(7 * var(--desk-px)); background: var(--desk-fill); color: var(--desk-muted-ink); }
.p-launcher-calculator { position: relative; padding: calc(14 * var(--desk-px)) calc(22 * var(--desk-px)); }
.p-launcher-calculator>div { display: flex; align-items: baseline; gap: calc(20 * var(--desk-px)); min-width: 0; }
.p-launcher-calculator>div>span { overflow: hidden; color: var(--desk-muted-ink); font-size: calc(16 * var(--desk-px)); overflow-wrap: anywhere; }
.p-launcher-calculator>div>strong { margin-left: auto; font-size: calc(28 * var(--desk-px)); font-weight: 500; overflow-wrap: anywhere; }
.p-launcher-calculator>p { margin-top: calc(5 * var(--desk-px)); color: var(--desk-faint); font-size: calc(10 * var(--desk-px)); }
.p-launcher-calculator>button { margin-top: calc(8 * var(--desk-px)); }

/* PokeTeamPanel.qml: 760×460 on this screen; six 44px rows, 21/21/18/16 margins. */
.p-native-team { display: flex; flex-direction: column; min-height: calc(460 * var(--desk-px)); padding: calc(18 * var(--desk-px)) calc(21 * var(--desk-px)) calc(16 * var(--desk-px)); }
.p-desktop-heading { display: flex; align-items: center; justify-content: space-between; gap: calc(10 * var(--desk-px)); min-height: calc(30 * var(--desk-px)); padding-right: calc(28 * var(--desk-px)); }
.p-desktop-heading>strong { font-size: calc(16 * var(--desk-px)); font-weight: 500; }
.p-team-refresh { padding: calc(5 * var(--desk-px)) calc(10 * var(--desk-px)); border: 0; border-radius: 999px; background: var(--desk-fill); color: var(--desk-muted-ink); font-size: calc(11 * var(--desk-px)) !important; }
.p-team-summary { margin-top: calc(9 * var(--desk-px)); color: var(--desk-faint); font-size: calc(11 * var(--desk-px)); }
.p-team-badges { display: flex; align-items: center; gap: calc(9 * var(--desk-px)); margin-top: calc(13 * var(--desk-px)); padding-top: calc(11 * var(--desk-px)); border-top: 1px solid var(--desk-rule); color: var(--desk-faint); font-size: calc(10 * var(--desk-px)); }
.p-team-badges>div { display: flex; gap: calc(5 * var(--desk-px)); }
.p-team-badges i { width: calc(7 * var(--desk-px)); height: calc(7 * var(--desk-px)); border: 1px solid transparent; border-radius: 50%; background: var(--desk-rule); }
.p-team-badges .is-earned { background: var(--os-accent); }
.p-team-badges .is-next { border-color: var(--os-accent); background: transparent; }
.p-team-list { display: flex; flex-direction: column; margin-top: calc(10 * var(--desk-px)); }
.p-team-row { display: grid; grid-template-columns: calc(42 * var(--desk-px)) calc(124 * var(--desk-px)) calc(46 * var(--desk-px)) minmax(0, 1fr) calc(76 * var(--desk-px)); align-items: center; gap: calc(10 * var(--desk-px)); width: 100%; min-height: calc(44 * var(--desk-px)); padding: 0; border: 0; border-radius: calc(6 * var(--desk-px)); background: transparent; text-align: left; }
.p-team-row>img { width: calc(36 * var(--desk-px)); height: calc(36 * var(--desk-px)); max-width: 100%; object-fit: contain; image-rendering: pixelated; }
.p-team-identity { display: flex; flex-direction: column; gap: calc(3 * var(--desk-px)); min-width: 0; }
.p-team-identity strong { overflow: hidden; font-size: calc(13 * var(--desk-px)); font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.p-team-identity small { overflow: hidden; color: var(--desk-faint); font-size: calc(10 * var(--desk-px)); text-overflow: ellipsis; white-space: nowrap; }
.p-team-level { color: var(--desk-muted-ink); font: calc(10 * var(--desk-px)) var(--desk-mono, var(--p-mono)); white-space: nowrap; }
.p-team-experience { height: max(2px, calc(6 * var(--desk-px))); overflow: hidden; border-radius: 999px; background: color-mix(in srgb, var(--desk-ink) 12%, transparent); }
.p-team-experience>i { display: block; width: var(--team-progress); height: 100%; border-radius: inherit; background: var(--os-accent); opacity: .7; }
.p-team-row-actions { display: flex; align-items: center; justify-content: flex-end; gap: calc(8 * var(--desk-px)); color: var(--desk-faint); font-size: calc(15 * var(--desk-px)); }
.p-team-row-actions>i { font-style: normal; }
.p-team-row[aria-pressed='true'] .p-team-row-actions>i { color: var(--os-accent); font-size: 0; }
.p-team-row[aria-pressed='true'] .p-team-row-actions>i::after { content: '★'; font-size: calc(15 * var(--desk-px)); }
.p-team-row[aria-pressed='true'] .p-team-experience>i { opacity: 1; }
.p-team-footer { display: flex; align-items: center; justify-content: space-between; gap: calc(10 * var(--desk-px)); margin-top: auto; padding-top: calc(12 * var(--desk-px)); border-top: 1px solid var(--desk-rule); color: var(--desk-faint); font-size: calc(10 * var(--desk-px)); }

@media (hover: hover) {
  .p-desktop-surface :is(.p-music-transport>button, .p-quick-settings>button, .p-control-team button, .p-control-links>button, .p-notifications-heading>button, .p-launcher-modes>button, .p-launcher-favourites>button, .p-launcher-apps>button, .p-launcher-secondary>button, .p-team-row, .p-team-refresh):hover { background: var(--desk-hover); color: var(--desk-ink); }
  .p-launcher-apps>button:hover .p-launcher-enter { opacity: 1; }
  .p-desktop-text-button:hover { color: var(--desk-ink) !important; text-decoration: underline; text-underline-offset: calc(3 * var(--desk-px)); }
}
.p-desktop-surface button:active { box-shadow: inset 0 0 0 999px #ffffff0d; }
@media (prefers-reduced-motion: no-preference) {
  .p-desktop-surface button { transition: background-color 130ms ease, color 130ms ease, box-shadow 90ms ease; }
  .p-launcher-enter, .p-team-experience>i, .p-music-spectrum>i { transition: opacity 130ms ease, height 180ms ease; }
}

/* The 1920px composition becomes readable rather than shrinking past 9px. */
@container (max-width: 600px) {
  .p-desktop-surface { font-size: 9px; }
  .p-desktop-surface svg { width: 13px; height: 13px; }
  .p-desktop-text-button { gap: 4px; padding-block: 4px; font-size: 9px !important; }
  .p-control-centre { padding: 10px; }
  .p-control-grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 12px; min-height: 0; }
  .p-control-settings::before, .p-control-side::before { display: none; }
  .p-control-music { padding: 8px 2px; }
  .p-control-art { width: min(100%, 90px); border-radius: 10px; }
  .p-control-art>svg { width: 30px; height: 30px; }
  .p-control-song { gap: 2px; margin-top: 9px; }
  .p-control-song strong { font-size: 11px; }
  .p-control-song>span, .p-player-state, .p-music-timeline { font-size: 9px; }
  .p-player-state { margin-top: 5px; }
  .p-music-timeline { margin-top: 12px; }
  .p-music-timeline>div { margin-top: 5px; }
  .p-music-transport { gap: 5px; min-height: 32px; margin-top: 5px; }
  .p-music-transport>button { width: 23px; height: 25px; padding: 4px; border-radius: 6px; }
  .p-music-transport svg { width: 15px; height: 15px; }
  .p-music-transport .p-music-play svg { width: 19px; height: 19px; }
  .p-music-spectrum { height: 23px; padding-top: 8px; gap: 2px; }
  .p-music-spectrum>i { max-width: 2px; }
  .p-control-settings { gap: 8px; }
  .p-control-slider { gap: 6px; min-height: 20px; }
  .p-control-slider>svg { width: 14px; height: 14px; }
  .p-control-slider output { width: 26px; font-size: 9px; }
  .p-desktop-range { height: 20px; }
  .p-desktop-range::-webkit-slider-thumb { width: 8px; height: 8px; margin-top: -3px; }
  .p-desktop-range::-moz-range-thumb { width: 8px; height: 8px; }
  .p-quick-settings { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px; margin-top: 0; }
  .p-quick-settings>button { gap: 3px; min-height: 38px; padding: 5px 2px; border-radius: 7px; }
  .p-quick-settings>button>span { font-size: 9px; }
  .p-control-team { min-height: 85px; margin-block: 2px; padding: 6px; border-radius: 8px; }
  .p-control-team>header { gap: 4px; font-size: 9px; }
  .p-control-team>header>span { display: none; }
  .p-control-team>header>button { margin-left: auto; font-size: 17px; }
  .p-control-team>div { gap: 3px; padding-block: 8px 6px; }
  .p-control-team img { width: 20px; height: 20px; }
  .p-control-team>div>button { gap: 4px; border-radius: 4px; }
  .p-control-team>footer { gap: 4px; font-size: 9px; }
  .p-control-team>footer>span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .p-control-weather { gap: 7px; min-height: 17px; font-size: 10px; }
  .p-control-weather>small { font-size: 9px; }
  .p-control-links { gap: 5px; }
  .p-control-links>button { gap: 3px; min-height: 37px; padding: 5px; border-radius: 8px; }
  .p-control-links strong, .p-control-links small { font-size: 9px; }
  .p-control-links>button>span:last-child { font-size: 16px; }
  .p-github-mini { display: none; }
  .p-control-side { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-column: 1 / -1; gap: 7px; padding-top: 9px; border-top: 1px solid var(--desk-rule); }
  .p-notifications-heading { grid-column: 1 / -1; min-height: 20px; padding-right: 0; }
  .p-notifications-heading>strong { font-size: 10px; }
  .p-notifications-heading>button { width: 22px; height: 22px; padding: 4px; }
  .p-control-notification { gap: 6px; padding: 8px; border-radius: 8px; }
  .p-notification-symbol { width: 13px; font-size: 13px; }
  .p-control-notification>div { gap: 3px; }
  .p-notification-source, .p-control-notification strong, .p-control-notification div>span:last-child { font-size: 9px; }
  .p-notification-source { flex-wrap: wrap; gap: 3px; margin-bottom: 2px; }
  .p-notifications-empty { grid-column: 1 / -1; min-height: 65px; font-size: 9px; }
  .p-native-launcher { padding-block: 4px 7px; }
  .p-launcher-search { gap: 7px; min-height: 34px; margin: 0 10px 6px; padding-right: 22px; }
  .p-launcher-search>svg { width: 13px; height: 13px; }
  .p-launcher-search>input { padding-block: 6px; font-size: 11px; }
  .p-launcher-modes { gap: 2px; }
  .p-launcher-modes>button { min-width: 17px; min-height: 22px; padding: 3px; border-radius: 4px; font-size: 9px; }
  .p-launcher-favourites { height: 36px; margin: 0 7px 7px; }
  .p-launcher-favourites>button { width: 36px; height: 36px; padding: 6px; border-radius: 9px; }
  .p-launcher-favourites .p-app-icon { width: 24px; height: 24px; }
  .p-app-icon { width: 21px; height: 21px; }
  .p-launcher-apps { max-height: min(230px, 55cqw); padding-inline: 6px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: var(--desk-rule) transparent; }
  .p-launcher-apps>button, .p-launcher-secondary>button { gap: 8px; min-height: 34px; padding: 5px 7px; border-radius: 7px; }
  .p-launcher-app-copy>strong, .p-launcher-secondary strong { font-size: 10px; }
  .p-launcher-app-copy>span, .p-launcher-secondary small { font-size: 9px; }
  .p-launcher-enter { width: 13px; font-size: 11px; }
  .p-launcher-empty { min-height: 40px; font-size: 10px; }
  .p-launcher-secondary { padding-inline: 6px; }
  .p-launcher-secondary>button>span:last-child { font-size: 11px; }
  .p-clipboard-symbol { width: 21px; height: 30px; font-size: 16px; }
  .p-window-workspace { padding: 4px; border-radius: 5px; }
  .p-launcher-calculator { padding: 12px 14px; }
  .p-launcher-calculator>div { gap: 12px; }
  .p-launcher-calculator>div>span { font-size: 12px; }
  .p-launcher-calculator>div>strong { font-size: 22px; }
  .p-launcher-calculator>p { margin-top: 6px; font-size: 9px; }
  .p-launcher-calculator>button { margin-top: 8px; }
  .p-native-team { min-height: 260px; padding: 10px; }
  .p-desktop-heading { gap: 8px; min-height: 25px; padding-right: 25px; }
  .p-desktop-heading>strong { font-size: 12px; }
  .p-team-refresh { padding: 5px 9px; font-size: 9px !important; }
  .p-team-summary { margin-top: 7px; font-size: 9px; }
  .p-team-badges { gap: 6px; margin-top: 9px; padding-top: 9px; font-size: 9px; }
  .p-team-badges>div { gap: 4px; }
  .p-team-badges i { width: 6px; height: 6px; }
  .p-team-badges>span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .p-team-list { margin-top: 7px; }
  .p-team-row { grid-template-columns: 24px minmax(55px, 1fr) 27px minmax(15px, 1fr) 24px; gap: 5px; min-height: 30px; border-radius: 5px; }
  .p-team-row>img { width: 24px; height: 24px; }
  .p-team-identity { gap: 1px; }
  .p-team-identity strong { font-size: 10px; }
  .p-team-identity small { display: none; }
  .p-team-level { font-size: 9px; }
  .p-team-row-actions { gap: 5px; font-size: 12px; }
  .p-team-row[aria-pressed='true'] .p-team-row-actions>i::after { font-size: 12px; }
  .p-team-footer { gap: 6px; margin-top: 9px; padding-top: 9px; font-size: 9px; }
}
