/* Translucent surfaces keep the wallpaper visible in both appearances. */
:root{--menu-glass:rgba(238,243,247,.24);--menu-edge:rgba(255,255,255,.64);--menu-shadow:0 14px 44px #10202c29,inset 0 1px 0 #ffffff80}
body.dark{--menu-glass:rgba(25,31,40,.28);--menu-edge:rgba(255,255,255,.2);--menu-shadow:0 16px 46px #0005,inset 0 1px 0 #ffffff1a}
body .popover,body.dark .popover,body #control{background:var(--menu-glass);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);border:1px solid var(--menu-edge);box-shadow:var(--menu-shadow)}
body #menubar,body.dark #menubar{background:rgba(228,237,243,.14);backdrop-filter:blur(24px) saturate(165%);-webkit-backdrop-filter:blur(24px) saturate(165%);border-bottom:1px solid #ffffff24}
body.dark #menubar{background:rgba(24,31,39,.18)}
#context button:not(:hover){background:transparent}#control .cc-tile{background:#ffffff1f}.dark #control .cc-tile{background:#ffffff0b}
#dock .dock-art{transition:none!important;will-change:transform}#dock .dock-item{will-change:transform}#dock .dock-item:hover .dock-art,#dock .dock-item:has(+.dock-item:hover) .dock-art,#dock .dock-item:hover+.dock-item .dock-art{transform:none}
#dock .dock-launching .dock-art>img,#dock .dock-launching .dock-art>.utility-icon{animation:dock-launch 500ms cubic-bezier(.2,.7,.2,1)}
@keyframes dock-launch{0%,100%{translate:0 0}36%{translate:0 -16px}64%{translate:0 -3px}80%{translate:0 -6px}}
#boot-screen{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 35%,#263d4d,#0c141d 75%);color:#edf5fa}
.boot-card{text-align:center;width:250px}.boot-symbol{width:56px;height:56px;margin:0 auto 30px;border:1px solid #ffffff80;border-radius:16px;display:grid;place-items:center;box-shadow:0 0 70px #8ec5e225;background:#ffffff0b;font-size:28px}.boot-card h1{font-size:22px;letter-spacing:3px;font-weight:450;margin-bottom:32px}.boot-card p{font-size:12px;color:#b8c9d5;min-height:32px;line-height:1.5}.boot-card progress{display:block;appearance:none;border:0;width:160px;height:4px;margin:0 auto 20px;border-radius:10px;overflow:hidden;background:#ffffff1a}.boot-card progress::-webkit-progress-bar{background:#ffffff1a}.boot-card progress::-webkit-progress-value{background:#dfedf7;border-radius:10px;transition:width 250ms ease}.boot-card progress::-moz-progress-bar{background:#dfedf7}.boot-card button{color:#fff;background:#ffffff20;padding:8px 16px;border-radius:9px}body.booting #desktop{visibility:hidden}
@media(prefers-reduced-motion:reduce){#dock .dock-launching .dock-art>*{animation:none}.boot-card progress::-webkit-progress-value{transition:none}}
@supports not (backdrop-filter:blur(1px)){body .popover,body #control{background:#e8edf3}body.dark .popover,body.dark #control{background:#292f38}}

/* The glass tray follows the same spring as the icon spacing. */
body #dock,body.dark #dock{isolation:isolate;background:transparent!important;border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:visible}
#dock::before{content:"";position:absolute;z-index:-1;pointer-events:none;left:calc(var(--dock-expansion,0px)/-2);bottom:0;width:calc(100% + var(--dock-expansion,0px));height:calc(100% + var(--dock-rise,0px));border-radius:22px;border:1px solid #ffffff59;background:rgba(235,243,246,.20);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);box-shadow:0 8px 28px #12212a26,inset 0 1px #ffffff4d}
body.dark #dock::before{background:rgba(26,32,41,.26);border-color:#ffffff30}
#dock .dock-item::before{bottom:var(--label-bottom,90px);z-index:5;background:rgba(236,242,245,.78);backdrop-filter:blur(16px);max-width:180px;text-overflow:ellipsis;overflow:hidden;line-height:18px}
#dock .dock-item:focus-visible::before{opacity:1}
.dark #dock .dock-item::before{background:rgba(33,39,47,.78);color:#fff}
.account-link{display:inline-block;padding:7px 12px;border-radius:8px;background:#007aff;color:white;text-decoration:none;font-size:12px}

#dock{--dock-size:clamp(18px,calc((100vw - 70px)/(var(--dock-count,14)*1.32 + 3.5)),48px)}

/* Override the older dark-panel selector as well as the shared popover. */
body.dark #control{background:rgba(22,28,36,.16);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);box-shadow:0 12px 32px #0003,inset 0 1px #ffffff15}
body.dark #control .cc-tile,body.dark #control .cc-panel{background:#ffffff08;border-color:#ffffff12}

/* Share the desktop stacking context, below windows and the Dock. */
#desktop > .desktop-selection{z-index:1}

/* Text contrast follows the actual wallpaper crop behind each menu group. */
body #menubar [data-ink=light]{color:#fff;text-shadow:0 1px 3px #000a}
body #menubar [data-ink=dark]{color:#15232c;text-shadow:0 1px 2px #ffffff65}
body #menubar button{color:inherit}
body #menubar.contrast-fallback{background:rgba(20,28,38,.58);color:#fff}
body #menubar.contrast-fallback .menu-left,body #menubar.contrast-fallback .menu-right{color:#fff;text-shadow:0 1px 3px #0008}
body .settings-sidebar{flex:0 0 180px;min-width:0;padding:24px 16px;overflow-wrap:anywhere}
.settings-sidebar .settings-account-name{display:block;margin:14px 0 0;font-size:15px;line-height:1.4;letter-spacing:0;white-space:normal}
.settings-sidebar .section-gap{display:block;margin:24px 0 8px;font-size:10px;line-height:1.5;letter-spacing:.5px}
.settings-sidebar .settings-current{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:13px;line-height:1.4}
.settings-sidebar svg{flex-shrink:0}.settings-main{min-width:0}.setting-row>span{min-width:0;overflow-wrap:anywhere}.setting-row>button,.setting-row>.account-link{flex-shrink:0}
#welcome-setup{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:24px;overflow:auto;background:#10223155;backdrop-filter:blur(20px);color:#172631}
.setup-card{width:min(600px,100%);padding:34px;border:1px solid #ffffff80;border-radius:26px;background:#eef4f5eb;box-shadow:0 24px 100px #0004;max-height:calc(100dvh - 48px);overflow:auto}.dark .setup-card{background:#242d37ed;color:#f3f7fa;border-color:#ffffff25}
.setup-card h1{font-size:30px;letter-spacing:-.8px;margin:12px 0}.setup-card p{font-size:14px;line-height:1.6}.setup-step{font-size:12px;opacity:.65}.setup-card button,.setup-card select,.setup-card input{font:inherit}.setup-card button{padding:11px 18px;border-radius:10px;color:inherit;background:#8092a31a}.setup-card .setup-primary{background:var(--accent);color:white}.setup-card footer{display:flex;justify-content:space-between;margin-top:28px;gap:14px}.setup-or{margin:16px 0;color:#a8791e;font-size:13px;font-weight:650}.dark .setup-or{color:#eac77b}.setup-note{font-size:12px!important;opacity:.8;margin-top:20px}.setup-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.setup-choices button{padding:10px}.setup-card [aria-pressed=true]{outline:3px solid var(--accent);outline-offset:2px}.theme-preview{display:block;height:85px;border-radius:6px;margin-bottom:10px;background:linear-gradient(90deg,#d4e0ea 28%,#fff 28%);border:1px solid #8899aa44}.theme-preview.dark{background:linear-gradient(90deg,#182330 28%,#394858 28%)}.theme-preview.system{background:linear-gradient(90deg,#eff5fa 50%,#283643 50%)}.setup-wallpapers{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.setup-wallpapers button{padding:6px;font-size:12px}.setup-wallpapers img{display:block;width:100%;height:78px;object-fit:cover;border-radius:6px;margin-bottom:7px}.setup-field{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0;font-size:14px}.setup-field input,.setup-field select{max-width:65%;padding:10px;border:1px solid #8899aa55;border-radius:8px;background:#ffffff80;color:#172631}.dark .setup-field input,.dark .setup-field select{background:#121c28;color:white}.setup-check{display:flex;gap:12px;align-items:center;font-size:14px}
body.reduced-motion *,body.reduced-motion *::before,body.reduced-motion *::after{animation-duration:0s!important;transition-duration:0s!important}
