/* Extend the existing silver limOS chrome; all panels live in the popover top layer. */
.desktop-menu { gap: 4px; padding-inline: 12px; position:relative; z-index:3; white-space:nowrap; }
.desktop-menu #os-name { padding-inline: 6px 10px; }
.desktop-menu-left, .desktop-menu-right { display:flex; height:100%; align-items:stretch; gap:0; min-width:0; }
.desktop-status { position:relative; }
.desktop-menu-right { margin-left:auto; flex-shrink:0; align-items:center; }
.desktop-menu .desktop-menu-left button { padding:0 9px; border-radius:0; }
.desktop-menu .desktop-front-app { font-weight:700; max-width:125px; overflow:hidden; text-overflow:ellipsis; }
.desktop-menu .desktop-status { height:100%; display:grid; place-items:center; padding:0 8px; min-width:30px; }
.desktop-menu button[aria-expanded="true"] { background:var(--aqua-pressed); box-shadow:inset 0 1px 3px #0003; color:#222; }
.desktop-menu .desktop-clock { display:block; height:100%; padding:0 9px; margin:0; font:11px var(--aqua-font); }
.desktop-language-mark { font-size:11px; }
.desktop-status.is-offline svg { opacity:.4; }
.desktop-status.is-muted::after { content:""; position:absolute; width:19px; height:1px; background:currentColor; transform:rotate(-45deg); }
.siri-orb { display:inline-block; width:19px; height:19px; border-radius:50%; background:url("/siri-icon.svg") center/contain no-repeat; }
.shell-panel { position:fixed; inset:auto; margin:0; max-width:calc(100vw - 12px); max-height:calc(100svh - 46px); overflow:auto; box-sizing:border-box; padding:6px 0; border:1px solid #999; border-radius:0 0 7px 7px; background:#f5f5f5; color:#292929; box-shadow:0 6px 12px #0003; font:12px/1.5 var(--aqua-font); }
.shell-panel::backdrop { background:transparent; }
.shell-panel button { font:inherit; color:inherit; cursor:pointer; }
.shell-panel button:disabled { color:#888; cursor:default; }
.shell-panel button:focus-visible, .shell-panel input:focus-visible, .shell-panel textarea:focus-visible { outline:2px solid #646464; outline-offset:-2px; }
.shell-panel [role="menuitem"] { display:flex; width:100%; text-align:left; align-items:center; justify-content:space-between; gap:24px; padding:5px 20px; border:0; background:transparent; white-space:nowrap; min-width:220px; }
.shell-panel [role="menuitem"]:hover:not(:disabled), .shell-panel [role="menuitem"]:focus-visible { background:linear-gradient(#777,#4c4c4c); color:#fff; }
.shell-panel kbd { font:11px var(--aqua-font); color:inherit; opacity:.75; }
.shell-panel hr { border:0; border-top:1px solid #d4d4d4; margin:5px 10px; }
.shell-panel h2 { font:700 13px/1.5 var(--aqua-font); margin:0 0 14px; }
.shell-panel p { margin:8px 0; font:12px/1.6 var(--aqua-font); overflow-wrap:anywhere; }
.shell-utility { width:300px; padding:16px; }
.shell-text-button { display:block; border:0; background:transparent; padding:7px 0; text-align:left; width:100%; }
.shell-text-button:hover { text-decoration:underline; }
.shell-connection { display:flex; align-items:center; gap:8px; }
.connection-dot { width:7px; height:7px; border-radius:50%; background:#427951; }
.connection-dot.is-offline { background:#9a4444; }
.shell-now-playing { display:flex; gap:12px; align-items:center; }
.shell-now-playing div { min-width:0; }
.shell-now-playing p { margin:3px 0; font-weight:600; }
.shell-now-playing small { color:#555; font-size:11px; }
.shell-transport { display:flex; justify-content:center; gap:14px; margin:16px 0; }
.shell-transport button { width:36px; height:28px; border:1px solid #aaa; border-radius:5px; background:var(--aqua-button); }
.shell-volume { display:grid; grid-template-columns:1fr auto; align-items:center; gap:9px; }
.shell-volume input { grid-column:1/-1; width:100%; accent-color:#666; }
.shell-switch { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:9px 0; }
.shell-switch input { accent-color:#555; }
.shell-control-actions [role="menuitem"] { padding:7px 0; min-width:0; }
.shell-control-actions [role="menuitem"]:hover { background:#dedede; color:#222; }
.shell-calendar-panel { width:304px; padding:18px; overflow:hidden; }
.shell-calendar-panel:focus { outline:none; }
.shell-calendar-date { color:#a9453b; margin:0 0 14px!important; font-size:14px!important; }
.shell-calendar-nav { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.shell-calendar-nav h2 { margin:0; font-size:14px; font-weight:600; }
.shell-calendar-nav button { border:0; background:transparent; width:28px; height:28px; font-size:22px; border-radius:5px; }
.shell-calendar-nav button:hover { background:#8882; }
.shell-calendar { width:100%; table-layout:fixed; border-collapse:collapse; text-align:center; font-variant-numeric:tabular-nums; }
.shell-calendar th { height:26px; padding:0; color:#777; font-size:11px; font-weight:400; }
.shell-calendar td { height:35px; padding:0; }
.shell-calendar td button { display:grid; place-items:center; box-sizing:border-box; width:29px; height:29px; padding:0; margin:auto; border:1px solid transparent; border-radius:50%; background:transparent; color:inherit; }
.shell-calendar td button:hover { background:#8882; }
.shell-calendar td button[aria-pressed="true"] { border-color:#a3a3a3; }
.shell-calendar td button[aria-current="date"] { border-color:#c5574b; background:#c5574b; color:#fff; }
.shell-calendar td button.outside-month { opacity:.35; }
.shell-calendar-today { display:block; margin:14px auto 0; padding:4px 12px; border:1px solid #aaa7; border-radius:5px; background:transparent; }
.shell-info-icon { text-align:center; margin:6px 0 14px; }
.shell-info-icon .siri-orb { width:48px; height:48px; }
.shell-search { width:470px; padding:0; }
.shell-search-input { display:flex; align-items:center; gap:12px; padding:16px; border-bottom:1px solid #ccc; }
.shell-search-input input { min-width:0; width:100%; font:16px var(--aqua-font); background:transparent; color:#222; border:0; outline:none; }
.shell-panel input::placeholder, .shell-panel textarea::placeholder { color:#666; opacity:1; }
.shell-search-results { max-height:45svh; overflow:auto; padding:5px; }
.shell-search-results button { display:flex; align-items:center; gap:12px; padding:8px 12px; width:100%; border:0; background:transparent; text-align:left; border-radius:3px; }
.shell-search-results button.is-selected, .shell-search-results button:hover { background:#dedede; }
.shell-search-results img { flex-shrink:0; object-fit:contain; }
.shell-search-results p { padding:12px; }
.shell-key-hint { border-top:1px solid #ddd; padding:8px 14px; color:#555; margin:0!important; font-size:10px!important; }
@media(max-width:1100px) { .desktop-menu .desktop-front-app { display:none; } .desktop-menu .desktop-menu-left button { padding-inline:7px; } }
@media(max-width:760px) { .desktop-menu .desktop-menu-left button { padding-inline:5px; } .desktop-menu .desktop-status { padding-inline:5px; min-width:25px; } .desktop-menu #os-name { padding-inline:2px 5px; } .desktop-menu .desktop-clock { font-size:10px; padding-inline:4px; } }
@media(max-width:600px) { .desktop-menu { gap:0; padding-inline:5px; } .desktop-menu-left button[data-panel="edit"], .desktop-menu-left button[data-panel="view"], .desktop-menu-left button[data-panel="go"], .desktop-menu-left button[data-panel="help"] { display:none; } .desktop-menu .desktop-menu-left button { padding-inline:6px; font-size:11px; } .desktop-status-network, .desktop-status-sound, .desktop-status-language { display:none!important; } .desktop-menu .desktop-clock { display:none; } .desktop-menu-right { gap:4px; } .desktop-menu .desktop-status { min-width:28px; } .shell-panel { max-height:calc(100svh - 42px); } }
@media(prefers-reduced-motion:reduce) { .shell-panel *, .siri-orb { animation:none!important; transition:none!important; } }

/* Retain the original circular return button, placed below the menu at top right. */
.desktop-dialog .desktop-close { top:38px; right:6px; }
.desktop-dialog { filter:brightness(var(--desktop-brightness,1)); }
.desktop-dialog[data-appearance="dark"] { --aqua-silver:linear-gradient(#515256,#35363a); --aqua-button:linear-gradient(#626367,#45464b); --aqua-pressed:linear-gradient(#35363a,#55565a); --aqua-ink:#eee; --aqua-muted:#ccc; }
.desktop-dialog[data-appearance="dark"] .desktop-menu { color:#f1f1f3; border-bottom-color:#222; text-shadow:none; }
.desktop-dialog[data-appearance="dark"] .desktop-clock { color:#eee; text-shadow:none; }
.desktop-dialog[data-appearance="dark"] .desktop-menu button[aria-expanded="true"] { color:#fff; }
.desktop-dialog[data-appearance="dark"] .shell-panel:not(.siri-panel) { background:#343539; color:#eee; border-color:#666; }
.desktop-dialog[data-appearance="dark"] .shell-panel input:not([type="range"]):not([type="checkbox"]) { color:#eee; }
.desktop-dialog[data-appearance="dark"] .shell-panel p,.desktop-dialog[data-appearance="dark"] .shell-panel small { color:inherit; }
.desktop-dialog[data-appearance="dark"] .shell-search-results button.is-selected { background:#56575b; }
.shell-app-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 9px; }
.shell-app-grid button { min-width:0; display:flex; flex-direction:column; align-items:center; gap:6px; padding:10px 4px; border:0; border-radius:6px; background:transparent; }
.shell-app-grid button:hover { background:#8882; }
.shell-app-grid span { overflow-wrap:anywhere; text-align:center; font-size:10px; }
.shell-app-grid small { font-size:9px; color:#666; }
.desktop-screen-rest { position:absolute; inset:32px 0 0; width:100%; height:calc(100% - 32px); z-index:var(--desktop-rest-layer,500); display:flex; flex-direction:column; justify-content:center; align-items:center; gap:25px; border:0; color:#eee; background:#141416; font:12px var(--aqua-font); cursor:pointer; }
.desktop-screen-rest time { font:300 76px/1 var(--aqua-font); font-variant-numeric:tabular-nums; }
.desktop-status-notifications { position:relative; }
.shell-notifications { width:330px; padding:17px 15px; }
.notifications-header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:18px; }
.notifications-header h2 { margin:0; }
.notifications-header button { border:0; padding:3px 0; color:#666; background:transparent; font-size:11px; }
.notifications-header button:hover { color:inherit; text-decoration:underline; }
.notifications-group + .notifications-group { margin-top:18px; }
.notifications-group h3 { margin:0 0 8px 2px; color:#666; font:500 11px/1.5 var(--aqua-font); }
.notification-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px; }
.notification-list li { position:relative; border:1px solid #8883; border-radius:7px; background:#ffffff50; overflow:hidden; }
.notification-open { display:flex; align-items:flex-start; gap:10px; padding:13px 28px 13px 12px; width:100%; min-height:76px; border:0; background:transparent; text-align:left; }
.notification-open:hover { background:#8881; }
.notification-open > img { flex-shrink:0; margin-top:3px; object-fit:contain; }
.notification-open > span { display:block; min-width:0; }
.notification-open small { display:block; font-size:10px; line-height:1.5; color:#666; margin-bottom:4px; }
.notification-open strong { display:block; font-size:12px; line-height:1.6; font-weight:500; overflow-wrap:anywhere; }
.notification-detail { display:block; margin-top:4px; font-size:11px; line-height:1.6; color:#666; }
.notification-dismiss { position:absolute; top:4px; right:4px; width:22px; height:22px; padding:0; border:0; border-radius:50%; background:transparent; color:#777!important; font-size:16px!important; }
.notification-dismiss:hover { background:#8882; }
.notifications-empty { display:flex; flex-direction:column; align-items:center; padding:25px 0 30px; color:#666; }
.notifications-empty p { margin-top:12px; }
.desktop-dialog[data-appearance="dark"] .notification-list li { background:#ffffff07; }
.desktop-dialog[data-appearance="dark"] .notifications-group h3,.desktop-dialog[data-appearance="dark"] .notification-detail,.desktop-dialog[data-appearance="dark"] .notifications-header button { color:#ccc; }
@media(max-width:760px) { .desktop-status-notifications { display:none!important; } }
.desktop-notes { display:flex; flex-direction:column; min-height:320px; }
.notes-toolbar { display:flex; align-items:center; gap:8px; border-bottom:1px solid #ccc; padding:0 0 12px; font-size:11px; }
.notes-toolbar button,.notes-actions button { padding:4px 10px; border:1px solid #aaa; border-radius:4px; background:var(--aqua-button); color:inherit; font:11px var(--aqua-font); }
.notes-workspace { display:grid; grid-template-columns:135px minmax(0,1fr); min-height:270px; }
.notes-list { border-right:1px solid #ccc; padding:10px 8px 10px 0; max-height:44svh; overflow:auto; }
.notes-list button { display:block; width:100%; padding:10px 7px; border:0; background:transparent; color:inherit; text-align:left; border-radius:4px; }
.notes-list button[aria-pressed="true"] { background:#d9d5c6; }
.notes-list strong { display:block; font:12px var(--aqua-font); overflow-wrap:anywhere; }
.notes-list small { color:#666; font:10px var(--aqua-font); }
.notes-editor { display:flex; flex-direction:column; min-width:0; padding:14px 0 10px 14px; gap:12px; }
.notes-editor input { min-width:0; width:100%; border:0; background:transparent; color:inherit; padding:0; font:600 16px var(--aqua-font); }
.notes-editor textarea { flex:1; min-height:160px; width:100%; resize:none; border:0; background:transparent; color:inherit; font:13px/1.8 var(--aqua-font); }
.notes-actions { display:flex; gap:7px; flex-wrap:wrap; }
.desktop-notes > [role="status"] { border-top:1px solid #ccc; margin:0; padding-top:9px; font-size:10px; color:#555; }
@media(max-width:600px) { .notes-workspace { grid-template-columns:92px minmax(0,1fr); } .notes-editor { padding-left:10px; } }
.shell-banner { position:absolute; top:48px; right:75px; max-width:min(320px,70vw); padding:12px 16px; border-radius:7px; background:#f3f3f3; color:#333; box-shadow:0 3px 8px #0003; z-index:var(--desktop-banner-layer,400); font:12px/1.6 var(--aqua-font); }
.desktop-dialog[data-appearance="dark"] .os-window:not(.pocket-window):not(.pinboard-window):not(.halfday-window),.desktop-dialog[data-appearance="dark"] .finder-main { background:#303135; color:#ededf0; }
.desktop-dialog[data-appearance="dark"] .os-titlebar { background:var(--aqua-silver); color:#eee; text-shadow:none; }
.desktop-dialog[data-appearance="dark"] .finder-toolbar,.desktop-dialog[data-appearance="dark"] .finder-sidebar { background:#3b3c40; color:#eee; }
.desktop-dialog[data-appearance="dark"] .finder-shell button,.desktop-dialog[data-appearance="dark"] .finder-search { color:inherit; }
.desktop-dialog[data-appearance="dark"] .notes-list button[aria-pressed="true"] { background:#5b5545; }
.os-window-body.trash-window-body { padding:0; }
.desktop-trash { display:flex; flex-direction:column; min-height:340px; font:12px/1.5 var(--aqua-font); color:inherit; }
.trash-toolbar { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 14px; border-bottom:1px solid #bbb; background:var(--aqua-silver); }
.trash-toolbar > span { color:#666; font-size:11px; }
.trash-toolbar > div { display:flex; gap:8px; }
.desktop-trash .trash-toolbar button,.trash-confirm button { display:inline-block; width:auto; margin:0; padding:4px 11px; border:1px solid #aaa; border-radius:5px; background:var(--aqua-button); color:inherit; text-decoration:none; font:11px/1.4 var(--aqua-font); cursor:pointer; }
.trash-toolbar button:disabled { opacity:.45; cursor:default; }
.trash-workspace { display:grid; grid-template-columns:minmax(0,1fr) 180px; flex:1; min-height:260px; }
.trash-files { min-width:0; overflow:auto; }
.trash-files table { width:100%; table-layout:fixed; border-collapse:collapse; text-align:left; }
.trash-files th { position:sticky; top:0; padding:5px 8px; color:#666; font-weight:400; font-size:10px; background:#efefef; border-bottom:1px solid #ccc; }
.trash-files th:first-child { width:48%; }
.trash-files th:nth-child(2) { width:28%; }
.trash-files td { height:34px; padding:3px 8px; font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.trash-files td:first-child img { display:inline-block; vertical-align:middle; margin-right:7px; object-fit:contain; }
.trash-files tbody tr { cursor:default; }
.trash-files tbody tr:nth-child(even) { background:#00000004; }
.trash-files tbody tr[aria-selected="true"] { background:#bfcddd; color:#1e2937; }
.trash-files tbody tr:focus-visible { outline:2px solid #4770a1; outline-offset:-2px; }
.trash-preview { border-left:1px solid #ddd; padding:22px 16px; text-align:center; background:#ffffff50; overflow:auto; max-height:46svh; }
.trash-preview h3 { margin:10px 0 5px; font:600 12px/1.6 var(--aqua-font); overflow-wrap:anywhere; }
.trash-preview small { color:#666; font-size:10px; }
.trash-preview p { text-align:left; white-space:pre-wrap; overflow-wrap:anywhere; color:#555; font:11px/1.7 var(--aqua-font); margin:18px 0 0; }
.desktop-trash > footer { display:flex; justify-content:space-between; gap:12px; padding:7px 12px; border-top:1px solid #ccc; color:#666; font:10px/1.5 var(--aqua-font); }
.trash-empty { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:15px; padding:36px 12px; color:#666; }
.trash-empty p { margin:0; font:12px var(--aqua-font); }
.trash-confirm { width:min(420px,calc(100vw - 28px)); box-sizing:border-box; padding:24px; border:1px solid #aaa; border-radius:8px; background:#f5f5f5; color:#222; box-shadow:0 12px 40px #0005; }
.trash-confirm[open] { display:flex; align-items:flex-start; gap:18px; }
.trash-confirm::backdrop { background:#0003; }
.trash-confirm h3 { margin:0; font:600 13px/1.6 var(--aqua-font); }
.trash-confirm p { margin:8px 0 20px; font:12px/1.7 var(--aqua-font); }
.trash-confirm-actions { display:flex; justify-content:flex-end; gap:8px; }
.trash-confirm [data-trash-confirm] { background:linear-gradient(#6e91c4,#416ca8); color:white; border-color:#3d6599; }
.trash-confirm button:focus-visible { outline:2px solid #4770a1; outline-offset:2px; }
.desktop-dialog[data-appearance="dark"] .trash-files th { background:#3b3c40; color:#ccc; }
.desktop-dialog[data-appearance="dark"] .trash-preview { background:#ffffff05; border-color:#555; }
.desktop-dialog[data-appearance="dark"] .trash-files tbody tr[aria-selected="true"] { background:#52657d; color:#fff; }
.desktop-dialog[data-appearance="dark"] .trash-toolbar > span,.desktop-dialog[data-appearance="dark"] .trash-preview p,.desktop-dialog[data-appearance="dark"] .trash-preview small,.desktop-dialog[data-appearance="dark"] .desktop-trash > footer { color:#ccc; }
@media(max-width:600px) { .trash-workspace { grid-template-columns:1fr; } .trash-preview { border-left:0; border-top:1px solid #ddd; max-height:180px; padding:14px; } .trash-preview > img { display:none; } .trash-preview p { margin-top:10px; } .trash-preview h3 { margin-top:0; } .trash-toolbar { padding:9px; } }
.desktop-dialog[data-appearance="dark"] .shell-banner { background:#3d3e43; color:#eee; }
.system-settings-tabs { display:flex; justify-content:center; gap:0; padding:0 0 18px; margin:0 0 17px; border-bottom:1px solid #bbb; }
.system-settings-tabs button { padding:5px 20px; border:1px solid #aaa; background:var(--aqua-button); color:inherit; font:12px var(--aqua-font); }
.system-settings-tabs button+button { border-left:0; }
.system-settings-tabs button:first-child { border-radius:5px 0 0 5px; }
.system-settings-tabs button:last-child { border-radius:0 5px 5px 0; }
.system-settings-tabs button[aria-pressed="true"] { background:var(--aqua-pressed); box-shadow:inset 0 1px 2px #0003; }
.system-settings-field { display:flex; flex-wrap:wrap; gap:14px; align-items:center; justify-content:space-between; padding:16px 0; border-bottom:1px solid #8883; font:12px var(--aqua-font); }
.system-settings-field input[type="range"] { width:44%; accent-color:#666; }
.system-settings-field input[type="checkbox"] { accent-color:#666; }
.system-settings-pane > p { font-size:12px; line-height:1.7; }
.os-reduce-motion .desktop-dialog *, .os-reduce-motion .aqua-project { animation:none!important; transition:none!important; scroll-behavior:auto!important; }


.desktop-dialog[data-appearance="dark"] .notification-dismiss { color:#ccc!important; }
.desktop-icons .dock-trash { margin-left:7px; }
