/* Texora OS icons (macOS theme). Artwork, squircle silhouette, margin and the
   desktop drop shadow are baked into dist/mac-icons/*.svg (scripts/build-os-icons.mjs),
   so the boxes here stay square and unclipped: no CSS radius, box-shadow or overlay. */
html[data-device][data-theme=macos] body.windows-os.windows-os :is(.icon-art,.dock-app-art,.start-button>span){
  border:0;border-radius:0;box-shadow:none;background-color:transparent;
  background-position:center;background-size:contain;background-repeat:no-repeat;
  image-rendering:auto;outline:0;
}
html[data-device][data-theme=macos] body.windows-os.windows-os :is(.icon-art,.dock-app-art,.start-button>span)::after{display:none}
html[data-device][data-theme=macos] body.windows-os.windows-os :is(.icon-art,.dock-app-art) .os-symbol{display:none}

/* Desktop: the SVG body is 824/1024 of the box, so boxes grow to keep the visible size. */
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .icon-art{width:60px;height:60px}
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .dock-app-art{width:56px;height:56px;flex:none}
/* Launcher matches the dock apps (macOS docks carry no labels; name stays in title/aria). */
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .start-button{font-size:0;gap:0;padding:0}
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .start-button>span{width:56px;height:56px;flex:none}
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .desktop-icon{gap:2px;padding-top:4px}
/* Running indicator sits in the dock's bottom padding, under the icon. */
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .dock-app{position:relative}
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .dock-dot{position:absolute;left:50%;bottom:-6px;width:4px;height:4px;margin:0;border-radius:50%;transform:translateX(-50%);flex:none}
/* Open launcher: dim the icon like a pressed app, no extra plate behind it. */
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os .start-button[aria-expanded=true]{background:transparent;box-shadow:none}
/* Focus ring follows the visible squircle, not the transparent margin. */
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os :is(.icon-art,.dock-app-art,.start-button>span)::before{
  content:'';position:absolute;inset:9.8%;border-radius:23%;pointer-events:none;opacity:0;
  box-shadow:0 0 0 2px #fff,0 0 0 4px #2469c6;transition:opacity .12s ease;
}
html[data-device=desktop][data-theme=macos] body.windows-os.windows-os :is(.desktop-icon:focus-visible .icon-art,.dock-app:focus-visible .dock-app-art,.start-button:focus-visible>span)::before{opacity:1}

/* Phone: full-bleed artwork (iOS style); only a whisper of lift against the wallpaper. */
html[data-device=phone][data-theme=macos] body.windows-os.windows-os :is(.icon-art,.dock-app-art,.start-button>span){
  filter:drop-shadow(0 1px 1.5px rgb(14 20 38 / .16));
}
html[data-device=phone][data-theme=macos] body.windows-os.windows-os :is(.desktop-icon:active .icon-art,.dock-app:active .dock-app-art,.start-button:active>span){
  filter:drop-shadow(0 1px 1.5px rgb(14 20 38 / .16)) brightness(.88);
}
html[data-device=phone][data-theme=macos] body.windows-os.windows-os .dock-app[aria-pressed=true] .dock-app-art{box-shadow:none}

/* Start menu and window title bars use the same app icons at small size. */
html[data-theme=macos] .start-menu-items .menu-icon{
  width:24px;height:24px;flex:none;font-size:0;line-height:0;color:transparent;
  background:var(--os-mini-icon) center/contain no-repeat;
  filter:drop-shadow(0 .5px 1px rgb(14 20 38 / .22));
}
html[data-theme=macos] .start-menu-items .menu-icon > *{display:none}
html[data-theme=macos] .start-menu-items :is(button,a):is(:hover,:focus-visible) .menu-icon{color:transparent}
html[data-device=desktop][data-theme=macos] .os-window .title-icon{
  width:18px;height:18px;flex:none;font-size:0;line-height:0;color:transparent;
  background:var(--os-mini-icon) center/contain no-repeat;
  filter:drop-shadow(0 .5px .75px rgb(14 20 38 / .2));
}
html[data-device=desktop][data-theme=macos] .os-window .title-icon > *{display:none}

/* generated:os-icon-urls:start */
html[data-theme=macos] :is(.start-menu-items [data-open=wissen] .menu-icon,.os-window[data-window=wissen] .title-icon){--os-mini-icon:url('mac-icons/wissen-mobile.svg?h=1003e60e')}
html[data-theme=macos] :is(.start-menu-items [data-open=projekt] .menu-icon,.os-window[data-window=projekt] .title-icon){--os-mini-icon:url('mac-icons/projekt-mobile.svg?h=0fc37b10')}
html[data-theme=macos] :is(.start-menu-items [data-open=willkommen] .menu-icon,.os-window[data-window=willkommen] .title-icon){--os-mini-icon:url('mac-icons/willkommen-mobile.svg?h=423733a0')}
html[data-theme=macos] :is(.start-menu-items [data-open=leistungen] .menu-icon,.os-window[data-window=leistungen] .title-icon){--os-mini-icon:url('mac-icons/leistungen-mobile.svg?h=951b7e8a')}
html[data-theme=macos] :is(.start-menu-items [data-open=ablauf] .menu-icon,.os-window[data-window=ablauf] .title-icon){--os-mini-icon:url('mac-icons/ablauf-mobile.svg?h=3d4d186f')}
html[data-theme=macos] :is(.start-menu-items [data-open=ueber] .menu-icon,.os-window[data-window=ueber] .title-icon){--os-mini-icon:url('mac-icons/ueber-mobile.svg?h=eea53f86')}
html[data-theme=macos] :is(.start-menu-items [data-open=kontakt] .menu-icon,.os-window[data-window=kontakt] .title-icon){--os-mini-icon:url('mac-icons/kontakt-mobile.svg?h=a6746584')}
html[data-theme=macos] :is(.start-menu-items [data-open=einstellungen] .menu-icon,.os-window[data-window=einstellungen] .title-icon){--os-mini-icon:url('mac-icons/einstellungen-mobile.svg?h=49fe77c6')}
html[data-theme=macos] :is(.start-menu-items [data-open=impressum] .menu-icon,.os-window[data-window=impressum] .title-icon){--os-mini-icon:url('mac-icons/impressum-mobile.svg?h=70bc2977')}
html[data-theme=macos] .start-menu-items [data-command] .menu-icon{--os-mini-icon:url('mac-icons/launcher-mobile.svg?h=3fdcdcee')}
/* generated:os-icon-urls:end */
