*,::before,::after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#d9deea}
:root{--accent:#2fbf9b;--accent-2:#1b8eaa;--wallpaper-a:#111827;--wallpaper-b:#28445c;--wallpaper-c:#f3b27f}
html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body{margin:0;line-height:inherit}
body,#app{user-select:none;-webkit-user-select:none}
input,textarea,select,.code-area,[contenteditable="true"]{user-select:text;-webkit-user-select:text}
body.is-dark{background:#070b16;color:#e5edf8}
button,input,textarea{font:inherit;color:inherit}
button{cursor:pointer;background-image:none}
textarea{resize:vertical}
h1,h2,h3,p{margin:0}
a{color:inherit;text-decoration:inherit}
.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-4{bottom:1rem}.left-4{left:1rem}.top-4{top:1rem}.z-10{z-index:10}
.mx-auto{margin-left:auto;margin-right:auto}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}
.block{display:block}.inline-flex{display:inline-flex}.flex{display:flex}.grid{display:grid}.hidden{display:none}
.h-7{height:1.75rem}.h-9{height:2.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-72{height:18rem}.h-full{height:100%}.h-screen{height:100vh}
.min-h-72{min-height:18rem}.min-h-screen{min-height:100vh}.w-7{width:1.75rem}.w-9{width:2.25rem}.w-80{width:20rem}.w-full{width:100%}
.max-w-xl{max-width:36rem}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.cursor-move{cursor:move}
.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.place-items-center{place-items:center}
.gap-2{gap:.5rem}.gap-3{gap:.75rem}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.break-all{word-break:break-all}.rounded{border-radius:.25rem}
.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-line{border-color:#d9deea}.border-mint{border-color:#2fbf9b}.border-ember{border-color:#f26b4f}
.bg-white{background-color:#fff}.bg-panel{background-color:#f7f8fb}.bg-ink{background-color:#172033}.bg-mint{background-color:#2fbf9b}.bg-ember{background-color:#f26b4f}.bg-slate-100{background-color:#f1f5f9}.bg-emerald-50{background-color:#ecfdf5}.bg-red-50{background-color:#fef2f2}
.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}
.text-left{text-align:left}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}
.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-4{line-height:1rem}.tracking-wide{letter-spacing:.025em}
.text-white{color:#fff}.text-ink{color:#172033}.text-mint{color:#2fbf9b}.text-slate-500{color:#64748b}.tabular-nums{font-variant-numeric:tabular-nums}
.shadow-window{box-shadow:0 22px 70px rgba(12,21,38,.22)}.outline-none{outline:2px solid transparent;outline-offset:2px}.focus\:border-mint:focus{border-color:#2fbf9b}
.desktop-wallpaper{padding:0;background:radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--accent) 72%,transparent),transparent 30%),radial-gradient(circle at 76% 12%,color-mix(in srgb,var(--accent-2) 62%,transparent),transparent 28%),radial-gradient(circle at 56% 78%,rgba(91,125,255,.48),transparent 34%),linear-gradient(135deg,var(--wallpaper-a) 0%,var(--wallpaper-b) 42%,var(--wallpaper-c) 100%)}
.desktop-wallpaper::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.26),rgba(255,255,255,0) 38%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.16),transparent 48%);pointer-events:none}
.status-bar,.taskbar,.glass-panel,.os-window,.mobile-nav,.mobile-launcher-handle{border:1px solid rgba(255,255,255,.36);background:rgba(255,255,255,.64);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%)}
body.is-dark .status-bar,body.is-dark .taskbar,body.is-dark .glass-panel,body.is-dark .os-window,body.is-dark .mobile-nav,body.is-dark .mobile-launcher-handle{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.72)}
.status-bar{height:1.75rem;box-shadow:0 10px 35px rgba(15,23,42,.14);z-index:40}
.system-text{font-size:.72rem;line-height:1rem;color:#334155;white-space:nowrap}
.notification-button{position:relative;display:grid;place-items:center;width:1.55rem;height:1.35rem;border-radius:.4rem;background:transparent;color:#334155;transition:background .14s ease,transform .14s ease}.notification-button:hover,.notification-button.is-active{background:rgba(255,255,255,.58)}.notification-icon{position:relative;width:.9rem;height:.9rem;border:.12rem solid currentColor;border-radius:.45rem .45rem .25rem .25rem}.notification-icon::before{content:"";position:absolute;left:50%;top:-.22rem;width:.36rem;height:.22rem;border:.1rem solid currentColor;border-bottom:0;border-radius:.3rem .3rem 0 0;transform:translateX(-50%)}.notification-icon::after{content:"";position:absolute;left:50%;bottom:-.28rem;width:.3rem;height:.12rem;border-radius:999px;background:currentColor;transform:translateX(-50%)}.notification-badge{position:absolute;right:-.18rem;top:-.28rem;display:grid;place-items:center;min-width:.9rem;height:.9rem;border-radius:999px;background:var(--accent);color:#fff;font-size:.58rem;font-weight:800;line-height:1}.notification-badge.hidden{display:none}.notification-center{position:absolute;right:.75rem;top:.65rem;z-index:110;width:min(24rem,calc(100vw - 1.5rem));max-height:min(32rem,calc(100dvh - 2rem));overflow:hidden;border-radius:.85rem;animation:scaleIn .14s ease both}.notification-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(255,255,255,.36);padding:.8rem}.notification-list{display:grid;gap:.65rem;max-height:26rem;overflow:auto;padding:.8rem}.notification-card{position:relative;display:grid;gap:.65rem;border:1px solid rgba(255,255,255,.42);border-radius:.7rem;background:rgba(255,255,255,.54);padding:.8rem 2.25rem .8rem .8rem}.notification-card strong{display:block;font-size:.88rem}.notification-card small{display:block;margin-top:.12rem;color:#64748b;font-size:.68rem}.notification-card p{margin-top:.18rem;color:#64748b;font-size:.78rem;line-height:1.35}.notification-actions{display:flex;flex-wrap:wrap;gap:.45rem}.notification-dismiss{position:absolute;right:.55rem;top:.55rem;display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:.35rem;background:rgba(15,23,42,.08);font-size:.8rem;font-weight:800}
body.is-dark .system-text,body.is-dark .menu-app-name,body.is-dark .menu-button,body.is-dark .text-ink{color:#e5edf8}
body.is-dark .text-slate-500{color:#94a3b8}
.menu-zone{min-width:0;flex:1 1 auto;overflow:hidden}
.menu-app-name{height:1.25rem;border-radius:.35rem;padding:0 .45rem;font-size:.72rem;font-weight:700;line-height:1rem;color:#172033;background:rgba(255,255,255,.32);white-space:nowrap;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease}
.menu-app-name:hover,.menu-app-name:focus-visible{background:rgba(255,255,255,.58);box-shadow:none;outline:none}
.menu-bar{display:flex;align-items:center;gap:.15rem;min-width:0;overflow:hidden}
.menu-button{height:1.25rem;border-radius:.35rem;padding:0 .45rem;font-size:.72rem;line-height:1rem;color:#172033;background:transparent;white-space:nowrap;transition:background .14s ease,color .14s ease}
.menu-button:hover{background:rgba(255,255,255,.58)}
.context-menu{position:fixed;z-index:120;min-width:12rem;border:1px solid rgba(255,255,255,.48);border-radius:.7rem;background:rgba(255,255,255,.78);box-shadow:0 18px 55px rgba(15,23,42,.22);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%);padding:.35rem;animation:scaleIn .12s ease both}
.context-menu-item{display:flex;width:100%;align-items:center;justify-content:space-between;border-radius:.45rem;padding:.48rem .65rem;text-align:left;font-size:.82rem;background:transparent;color:#172033}
.context-menu-check{position:relative;display:inline-grid;place-items:center;width:1rem;height:1rem;margin-right:.45rem;flex:0 0 auto}.context-menu-check-icon{position:relative;width:.82rem;height:.82rem;border-radius:.28rem;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.context-menu-check-icon::before{content:"";position:absolute;left:.22rem;top:.17rem;width:.32rem;height:.56rem;border-right:.13rem solid currentColor;border-bottom:.13rem solid currentColor;transform:rotate(45deg)}.context-menu-label{min-width:0;flex:1 1 auto;text-align:left}
.context-menu-item:hover{background:color-mix(in srgb,var(--accent) 16%,rgba(255,255,255,.72))}
.context-menu-item:disabled{cursor:default;opacity:.48}
.context-menu-item:disabled:hover{background:transparent}
.context-menu-separator{height:1px;margin:.3rem .25rem;background:rgba(100,116,139,.22)}
.system-dialog{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:1rem;background:rgba(12,21,38,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.system-dialog.hidden{display:none}.system-dialog-panel{width:min(24rem,100%);border-radius:.85rem;padding:1rem}.system-dialog-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}
/** [CODEX - 2026-06-19 02:05:00]
 * Open-with picker cards use the OS dialog surface while keeping app icons and defaults scannable.
 */
.open-with-dialog{display:grid;gap:.75rem}.open-with-apps{display:grid;gap:.45rem;max-height:18rem;overflow:auto}.open-with-app{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.65rem;width:100%;border:1px solid rgba(148,163,184,.22);border-radius:.65rem;background:rgba(255,255,255,.5);padding:.65rem;text-align:left;transition:background .14s ease,border-color .14s ease,box-shadow .14s ease}.open-with-app strong,.open-with-app small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-with-app small{color:#64748b;font-size:.72rem}.open-with-app:hover,.open-with-app.is-selected{border-color:color-mix(in srgb,var(--accent) 48%,rgba(148,163,184,.22));background:color-mix(in srgb,var(--accent) 14%,rgba(255,255,255,.68));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}
/** [CODEX - 2026-06-19 02:05:00]
 * Dark mode keeps Open-with choices readable against the modal glass surface.
 */
body.is-dark .open-with-app{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.54)}body.is-dark .open-with-app small{color:#94a3b8}body.is-dark .open-with-app:hover,body.is-dark .open-with-app.is-selected{border-color:color-mix(in srgb,var(--accent) 52%,rgba(148,163,184,.24));background:color-mix(in srgb,var(--accent) 18%,rgba(30,41,59,.76))}
.taskbar{height:3.25rem;box-shadow:0 -14px 42px rgba(15,23,42,.16);z-index:40;overflow:visible}
.desktop-icons{position:absolute;left:1rem;top:1rem;z-index:2;display:grid;gap:.75rem;width:7rem}#windowLayer{z-index:5;pointer-events:none}#windowLayer .os-window{pointer-events:auto}.snap-preview{position:absolute;z-index:9990;border:2px solid color-mix(in srgb,var(--accent) 68%,#fff);border-radius:.65rem;background:color-mix(in srgb,var(--accent) 20%,rgba(255,255,255,.28));box-shadow:inset 0 0 0 1px rgba(255,255,255,.5),0 18px 46px color-mix(in srgb,var(--accent) 20%,transparent);pointer-events:none;transition:left .08s ease,top .08s ease,width .08s ease,height .08s ease,opacity .08s ease}.snap-preview.hidden{display:none}.snap-assist{position:absolute;z-index:9991;display:grid;place-items:center;padding:1rem;pointer-events:auto}.snap-assist.hidden{display:none}.snap-assist-panel{width:min(100%,32rem);max-height:min(100%,28rem);overflow:hidden;border:1px solid rgba(255,255,255,.42);border-radius:.85rem;background:rgba(255,255,255,.74);box-shadow:0 18px 55px rgba(15,23,42,.22);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%);padding:.75rem}.snap-assist-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.65rem;max-height:24rem;overflow:auto}.snap-assist-card{width:100%}body.is-dark .snap-preview{border-color:color-mix(in srgb,var(--accent) 62%,#e5edf8);background:color-mix(in srgb,var(--accent) 22%,rgba(15,23,42,.4));box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 18px 46px rgba(2,6,23,.32)}body.is-dark .snap-assist-panel{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.84);box-shadow:0 18px 55px rgba(2,6,23,.45)}.desktop-icon{display:grid;justify-items:center;gap:.35rem;border-radius:.65rem;background:transparent;padding:.55rem .35rem;color:#fff;text-align:center;text-shadow:0 1px 8px rgba(15,23,42,.62)}.desktop-icon:hover,.desktop-icon:focus-visible,.desktop-icon.is-selected{background:rgba(255,255,255,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.desktop-icon strong,.desktop-icon small{display:block;overflow:hidden;max-width:6.4rem;text-overflow:ellipsis;white-space:nowrap}.desktop-icon strong{font-size:.76rem}.desktop-icon small{font-size:.64rem;opacity:.82}.desktop-os-icon{width:2.5rem;height:2.5rem;border-radius:.55rem;background:color-mix(in srgb,var(--accent) 82%,#111827);color:#fff;box-shadow:0 12px 28px rgba(15,23,42,.28)}.linkos-launcher-icon{position:relative;display:grid;grid-template-columns:repeat(2,.48rem);grid-template-rows:repeat(2,.48rem);gap:.13rem;place-content:center;width:1.3rem;height:1.3rem;border-radius:.45rem;transform:rotate(-12deg)}.linkos-launcher-icon::before{content:"";position:absolute;inset:-.18rem;border-radius:.62rem;background:color-mix(in srgb,var(--accent) 14%,transparent);box-shadow:0 8px 18px color-mix(in srgb,var(--accent) 26%,transparent)}.linkos-launcher-icon span{position:relative;display:block;border-radius:.16rem;background:#172033;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 2px 8px rgba(15,23,42,.22)}.linkos-launcher-icon span:nth-child(1){transform:translate(.02rem,-.03rem);background:var(--accent)}.linkos-launcher-icon span:nth-child(2){transform:translate(.05rem,.02rem)}.linkos-launcher-icon span:nth-child(3){transform:translate(-.04rem,.03rem)}.linkos-launcher-icon span:nth-child(4){transform:translate(.02rem,.05rem);background:var(--accent-2)}.desktop-install-icon{position:relative;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.65rem;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 12px 28px rgba(15,23,42,.28)}.desktop-install-icon::before{content:"";width:.86rem;height:.86rem;border-right:.18rem solid #fff;border-bottom:.18rem solid #fff;transform:translateY(-.18rem) rotate(45deg)}.desktop-install-icon::after{content:"";position:absolute;bottom:.58rem;width:1.1rem;height:.18rem;border-radius:999px;background:#fff}
.taskbar-start{display:inline-flex;align-items:center;gap:.45rem}
.taskbar-start{position:relative;width:2.5rem;min-width:2.5rem;justify-content:center;padding-left:0;padding-right:0;background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.72));box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 24%,transparent),inset 0 1px 0 rgba(255,255,255,.55)}.taskbar-start-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.os-logo-icon{display:grid;grid-template-columns:repeat(2,.38rem);grid-template-rows:repeat(2,.38rem);gap:.12rem;width:1rem;height:1rem;padding:.08rem;border-radius:.25rem;background:#172033;box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.os-logo-icon span{display:block;border-radius:.05rem;background:var(--accent)}.os-logo-icon span:nth-child(4){background:var(--accent-2)}
.taskbar-apps{min-width:0;overflow:visible;padding:.2rem 0}
.taskbar[data-alignment="open-center"] .taskbar-apps,.taskbar[data-alignment="all-center"] .taskbar-apps{justify-content:center}.taskbar[data-alignment="all-center"]{justify-content:center}.taskbar[data-alignment="all-center"] .taskbar-apps{flex:0 1 auto}.taskbar[data-alignment="start"] .taskbar-apps{justify-content:flex-start}.taskbar-group[draggable="true"]{cursor:grab}.taskbar-group[draggable="true"]:active{cursor:grabbing}.taskbar-group.is-dragging{opacity:.55}.taskbar-group.is-drop-before::before,.taskbar-group.is-drop-after::after{content:"";position:absolute;top:.2rem;bottom:.2rem;width:.18rem;border-radius:999px;background:var(--accent);box-shadow:0 0 14px var(--accent);z-index:2}.taskbar-group.is-drop-before::before{left:-.35rem}.taskbar-group.is-drop-after::after{right:-.35rem}
.taskbar-group{position:relative;display:inline-flex}.taskbar-app{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-width:2.25rem;max-width:12rem;height:2.25rem;padding:0 .45rem;font-size:.82rem;white-space:nowrap;transition:transform .18s ease,background .18s ease,opacity .18s ease,box-shadow .18s ease}
.taskbar-app.is-active{background:rgba(255,255,255,.88);box-shadow:0 10px 28px color-mix(in srgb,var(--accent) 28%,transparent)}
.taskbar-app.is-active::after{content:"";position:absolute;left:.45rem;right:.45rem;bottom:-.32rem;height:.22rem;border-radius:999px;background:var(--accent);box-shadow:0 0 14px var(--accent)}
.taskbar-app.is-minimized{opacity:.62}
.taskbar-app.icon-only .taskbar-label{display:none}
.taskbar-app.has-label{padding:0 .65rem;justify-content:flex-start}
.taskbar-count{display:grid;place-items:center;min-width:1rem;height:1rem;border-radius:999px;background:var(--accent);color:#fff;font-size:.62rem;font-weight:800}.taskbar-previews{position:absolute;left:50%;bottom:calc(100% + .55rem);display:flex;gap:.5rem;max-width:min(42rem,calc(100vw - 2rem));padding:.5rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.78);box-shadow:0 18px 48px rgba(15,23,42,.22);backdrop-filter:blur(20px) saturate(145%);-webkit-backdrop-filter:blur(20px) saturate(145%);opacity:0;pointer-events:none;transform:translate(-50%,.35rem);transition:opacity .14s ease,transform .14s ease;z-index:126}.taskbar-group:hover .taskbar-previews,.taskbar-group:focus-within .taskbar-previews{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.taskbar-preview{position:relative;display:grid;grid-template-columns:auto minmax(5rem,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:.2rem .5rem;width:12rem;border:1px solid rgba(148,163,184,.22);border-radius:.55rem;background:rgba(255,255,255,.62);padding:.55rem;text-align:left}.taskbar-preview.is-active{outline:2px solid var(--accent)}.preview-thumb{grid-row:1 / 3}.preview-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:700}.preview-state{font-size:.68rem;color:#64748b}.preview-close{display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:.35rem;background:rgba(15,23,42,.08);font-size:.8rem;font-weight:800}.preview-close:hover{background:rgba(239,68,68,.18);color:#991b1b}body.is-dark .taskbar-previews{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.86)}body.is-dark .taskbar-preview{border-color:rgba(148,163,184,.22);background:rgba(30,41,59,.72)}body.is-dark .preview-state{color:#94a3b8}
.mini-app-icon{display:grid;place-items:center;width:1.65rem;height:1.65rem;aspect-ratio:1 / 1;border-radius:.28rem;color:#fff;font-weight:700;font-size:.66rem;flex:0 0 auto}
.mini-app-icon svg,.app-icon svg{width:68%;height:68%;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}
.glass-panel{border-radius:.75rem;overflow:hidden}
.glass-divider{border-bottom:1px solid rgba(255,255,255,.38)}
.launcher-panel{position:absolute;left:1rem;bottom:1rem;top:auto;width:min(32rem,calc(100vw - 2rem));z-index:70;animation:drawerIn .2s ease both}
.launcher-head{display:grid;gap:.75rem}.launcher-title-row,.launcher-controls{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.launcher-title-row strong{font-size:1.05rem}.launcher-power{display:grid;place-items:center;width:2.2rem;height:2.2rem;padding:0;border-radius:.7rem}.launcher-power span{position:relative;width:1rem;height:1rem;border:.13rem solid currentColor;border-top-color:transparent;border-radius:50%}.launcher-power span::before{content:"";position:absolute;left:50%;top:-.32rem;width:.13rem;height:.62rem;border-radius:999px;background:currentColor;transform:translateX(-50%)}.launcher-search{position:relative;display:block}.launcher-search .field-control{padding-left:2.25rem}.launcher-search-icon{position:absolute;left:.78rem;top:50%;z-index:1;width:.78rem;height:.78rem;border:.12rem solid currentColor;border-radius:50%;color:#64748b;transform:translateY(-56%);pointer-events:none}.launcher-search-icon::after{content:"";position:absolute;right:-.28rem;bottom:-.2rem;width:.42rem;height:.12rem;border-radius:999px;background:currentColor;transform:rotate(45deg)}.launcher-controls{justify-content:flex-start;flex-wrap:wrap}.launcher-controls .control-button.is-active{background:color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.72));box-shadow:inset 0 -.18rem 0 var(--accent)}.launcher-grid{display:grid;gap:.9rem;max-height:min(36rem,calc(100dvh - 10rem));overflow:auto}.launcher-section{display:grid;gap:.55rem}.launcher-section h3{color:#64748b;font-size:.72rem;font-weight:800;text-transform:uppercase}.launcher-app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.8rem,1fr));gap:.6rem}.launcher-item{position:relative;display:grid;justify-items:center;gap:.45rem;min-height:6.2rem;padding:.75rem .55rem;text-align:center}.launcher-section.is-pinned .launcher-app-grid{grid-template-columns:repeat(auto-fill,minmax(5.1rem,1fr))}.launcher-item.is-pinned{background:color-mix(in srgb,var(--accent) 16%,rgba(255,255,255,.68))}.launcher-item.is-pinned::after{content:"";position:absolute;top:.55rem;right:.55rem;width:.42rem;height:.42rem;border-radius:999px;background:var(--accent);box-shadow:0 0 0 .16rem color-mix(in srgb,var(--accent) 18%,transparent)}.launcher-search-grid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr))}.launcher-search-item{min-height:5.7rem}.launcher-item span:last-child{display:grid;gap:.1rem;min-width:0}.launcher-item strong,.launcher-item small{overflow:hidden;max-width:5.6rem;text-overflow:ellipsis;white-space:nowrap}.launcher-item.is-dragging{opacity:.52}.launcher-item.is-drop-before::before,.launcher-item.is-drop-after::after{content:"";position:absolute;top:.45rem;bottom:.45rem;width:.18rem;border-radius:999px;background:var(--accent);box-shadow:0 0 14px var(--accent)}.launcher-item.is-drop-before::before{left:-.32rem}.launcher-item.is-drop-after::after{right:-.32rem}body.is-dark .launcher-section h3,body.is-dark .launcher-search-icon{color:#94a3b8}body.is-dark .launcher-controls .control-button.is-active{background:color-mix(in srgb,var(--accent) 28%,rgba(15,23,42,.72))}
.switcher{position:absolute;inset:0;z-index:125;display:grid;place-items:center;padding:1rem;background:rgba(12,21,38,.18)}
.switcher.hidden{display:none}
.switcher-panel{width:min(42rem,100%);max-height:min(34rem,calc(100dvh - 3rem));overflow:hidden;animation:scaleIn .18s ease both}
.switcher-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;overflow:auto;max-height:26rem}
.switcher-card{display:grid;grid-template-columns:8rem minmax(0,1fr);align-items:center;gap:.75rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.52);padding:.8rem;text-align:left;transition:transform .08s ease,background .08s ease,border-color .08s ease,box-shadow .08s ease}
.switcher-card small{display:block;color:#64748b;font-size:.72rem}.switcher-card.is-selected{background:#fff;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 34%,transparent),0 18px 42px rgba(15,23,42,.26);transform:translateY(-2px);filter:none;backdrop-filter:none;-webkit-backdrop-filter:none}
body.is-dark .switcher-card.is-selected{background:#0f172a}
.switcher-thumb{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.45rem;height:4.8rem;border:1px solid rgba(148,163,184,.22);border-radius:.45rem;background:rgba(255,255,255,.55);padding:.45rem;overflow:hidden;filter:none}.switcher-card.is-selected .switcher-thumb{background:#fff;border-color:var(--accent);filter:none}.switcher-thumb-lines{display:grid;gap:.18rem;min-width:0}.switcher-thumb-lines i{display:block;height:.36rem;border-radius:999px;background:rgba(100,116,139,.22);font-size:0}.switcher-card.is-selected .switcher-thumb-lines i{background:color-mix(in srgb,var(--accent) 42%,rgba(100,116,139,.22))}.switcher-thumb-lines i:nth-child(2n){width:76%}.switcher-thumb-lines i:nth-child(3n){width:52%}
body.is-dark .switcher-card.is-selected .switcher-thumb{background:#1e293b}
.os-window{width:720px;height:520px;max-width:calc(100% - 1rem);max-height:calc(100% - 1rem);border-radius:.75rem;box-shadow:0 24px 90px rgba(7,14,28,.28);opacity:.96;transform:scale(.985);transition:opacity .22s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease,width .18s ease,height .18s ease,left .18s ease,top .18s ease}
.os-window.is-active{opacity:1;transform:scale(1);box-shadow:0 28px 100px rgba(7,14,28,.34)}
.os-window.is-dragging,.os-window.is-resizing{transition:opacity .22s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease}
.os-window.is-opening{opacity:0;transform:translateY(.75rem) scale(.96)}
.os-window.is-closing{opacity:0;transform:scale(.96)}
.os-window.is-minimized{pointer-events:none;opacity:0;transform:translateY(1rem) scale(.96)}
.os-window.is-maximized{max-width:none;max-height:none;border-radius:0;transform:scale(1)}
.window-handle{border-bottom:1px solid rgba(255,255,255,.38);background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(255,255,255,.28))}
.window-controls{flex:0 0 auto;gap:.35rem}
.frame-button{display:grid;place-items:center;width:1.85rem;height:1.55rem;border-radius:.42rem;border:1px solid rgba(15,23,42,.12);background:rgba(255,255,255,.48);box-shadow:inset 0 1px 0 rgba(255,255,255,.72);transition:transform .14s ease,background .14s ease,border-color .14s ease}
.frame-button:hover{background:rgba(255,255,255,.76);border-color:color-mix(in srgb,var(--accent) 36%,rgba(15,23,42,.12));transform:translateY(-1px)}
.frame-button:active{transform:translateY(0)}
.frame-button span{display:block;position:relative;width:.7rem;height:.7rem;color:#172033}
.window-minimize span::before{content:"";position:absolute;left:.05rem;right:.05rem;bottom:.12rem;height:.1rem;background:currentColor;border-radius:999px}
.window-maximize span::before{content:"";position:absolute;inset:.08rem;border:.1rem solid currentColor;border-radius:.08rem}
.window-close span::before,.window-close span::after{content:"";position:absolute;left:50%;top:.05rem;width:.1rem;height:.62rem;background:currentColor;border-radius:999px}.window-close span::before{transform:translateX(-50%) rotate(45deg)}.window-close span::after{transform:translateX(-50%) rotate(-45deg)}
.window-content{background:rgba(255,255,255,.38)}
body.is-dark .window-content{background:rgba(15,23,42,.42)}
.resize-handle{position:absolute;z-index:2;background:transparent}
.resize-handle-n{left:.75rem;right:.75rem;top:0;height:.45rem;cursor:ns-resize}
.resize-handle-e{right:0;top:.75rem;bottom:.75rem;width:.45rem;cursor:ew-resize}
.resize-handle-s{left:.75rem;right:.75rem;bottom:0;height:.45rem;cursor:ns-resize}
.resize-handle-w{left:0;top:.75rem;bottom:.75rem;width:.45rem;cursor:ew-resize}
.resize-handle-ne{right:0;top:0;width:.9rem;height:.9rem;cursor:nesw-resize}
.resize-handle-se{right:0;bottom:0;width:.9rem;height:.9rem;cursor:nwse-resize}
.resize-handle-sw{left:0;bottom:0;width:.9rem;height:.9rem;cursor:nesw-resize}
.resize-handle-nw{left:0;top:0;width:.9rem;height:.9rem;cursor:nwse-resize}
.control-button,.field-control,.launcher-item,.content-row{border:1px solid rgba(255,255,255,.48);border-radius:.55rem;background:rgba(255,255,255,.56);box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
body.is-dark .control-button,body.is-dark .field-control,body.is-dark .launcher-item,body.is-dark .content-row{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.58);color:#e5edf8;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.control-button,.launcher-item,.dock-icon,.mobile-nav-button{transition:transform .16s ease,background .16s ease,opacity .16s ease}
.control-button:hover,.launcher-item:hover,.dock-icon:hover,.mobile-nav-button:hover{transform:translateY(-1px)}
.field-control{background:rgba(255,255,255,.74)}
.primary-button{border:0;border-radius:.55rem;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 28%,transparent)}
.launcher-item,.content-row{transition:transform .16s ease,background .16s ease}
.app-icon,.dock-icon{width:2.5rem;height:2.5rem;aspect-ratio:1 / 1;border-radius:.32rem;font-weight:700;letter-spacing:.01em;box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 10px 24px rgba(15,23,42,.18);transition:transform .16s ease}
.store-shell{display:grid;gap:1rem}.store-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid rgba(255,255,255,.48);border-radius:.85rem;background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(255,255,255,.36));padding:1rem}.store-title{font-size:1.15rem;line-height:1.35;font-weight:700}.store-featured{display:grid;gap:.35rem}.store-browser{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:1rem}.store-nav{display:grid;align-content:start;gap:.45rem}.store-category-strip{display:flex;gap:.5rem;overflow:auto;padding:.1rem .05rem .35rem;scrollbar-width:thin}.store-category-tab{flex:0 0 auto;border:1px solid rgba(255,255,255,.42);border-radius:.55rem;background:rgba(255,255,255,.42);padding:.65rem .75rem;text-align:left;font-weight:700}.store-category-tab.is-active{background:rgba(255,255,255,.82);box-shadow:inset 0 -.22rem 0 var(--accent)}.store-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem}.store-card{display:grid;grid-template-columns:auto 1fr;gap:.75rem;border:1px solid rgba(255,255,255,.48);border-radius:.85rem;background:rgba(255,255,255,.58);padding:1rem}.store-card button{grid-column:auto}.store-detail{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1rem;border:1px solid rgba(255,255,255,.48);border-radius:.85rem;background:rgba(255,255,255,.58);padding:1rem}.app-package-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.5rem}.app-package-meta .content-row{display:grid;gap:.2rem}.store-categories{display:grid;gap:1.15rem}.store-category{display:grid;gap:.6rem;scroll-margin-top:.75rem}.store-category-list{display:grid;gap:.6rem}.store-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem}.store-info{min-width:0}.store-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:.5rem}.store-row .store-actions{grid-column:auto;justify-content:flex-end}
.settings-toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.settings-app,.file-manager{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:1rem;height:100%}.settings-app{min-height:0;overflow:hidden}.settings-nav{position:sticky;top:0;align-self:stretch;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:.15rem;scrollbar-width:thin}.settings-pane{min-height:0}.settings-nav,.file-sidebar{display:grid;align-content:start;gap:.45rem}.settings-nav-item,.file-place{border:1px solid rgba(255,255,255,.42);border-radius:.55rem;background:rgba(255,255,255,.42);padding:.65rem .75rem;text-align:left;font-weight:600}.settings-nav-item.is-active,.file-place.is-active{background:rgba(255,255,255,.82);box-shadow:inset .22rem 0 0 var(--accent)}.settings-pane,.file-main{min-width:0;overflow:auto}.settings-title{font-size:1.1rem;font-weight:700;margin-bottom:1rem}.settings-section{display:grid;gap:.65rem;margin-bottom:1rem}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.6rem,1fr));gap:.65rem;max-width:22rem}.theme-swatch{display:grid;place-items:center;height:2.6rem;border-radius:.7rem;border:2px solid rgba(255,255,255,.55);background:linear-gradient(135deg,var(--swatch-a),var(--swatch-b));box-shadow:0 10px 24px rgba(15,23,42,.14);transition:transform .16s ease,border-color .16s ease}.theme-swatch:hover{transform:translateY(-1px)}.theme-swatch.is-active{border-color:#fff;outline:2px solid var(--accent)}.theme-swatch span{width:.75rem;height:.75rem;border-radius:50%;background:rgba(255,255,255,.86)}.settings-switch-row,.settings-select-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;border:1px solid rgba(255,255,255,.48);border-radius:.75rem;background:rgba(255,255,255,.58);padding:1rem;text-align:left}.settings-switch-row small,.settings-select-row small{display:block;color:#64748b;font-size:.78rem;margin-top:.2rem}.settings-select-row select{min-width:9rem}.toggle-switch{position:relative;width:3.2rem;height:1.75rem;border-radius:999px;background:rgba(100,116,139,.35);transition:background .22s ease,box-shadow .22s ease;flex:0 0 auto}.toggle-switch span{position:absolute;top:.2rem;left:.2rem;width:1.35rem;height:1.35rem;border-radius:50%;background:#fff;box-shadow:0 3px 10px rgba(15,23,42,.25);transition:transform .22s cubic-bezier(.2,.8,.2,1)}.toggle-switch.is-on{background:var(--accent);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--accent) 18%,transparent)}.toggle-switch.is-on span{transform:translateX(1.45rem)}.settings-app-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem}
.toggle-switch{overflow:hidden;transition:background .24s ease,box-shadow .24s ease,filter .24s ease}.toggle-switch::before{content:"";position:absolute;inset:.18rem;border-radius:999px;background:color-mix(in srgb,var(--accent) 34%,transparent);opacity:0;transform:translateX(-45%) scale(.72);pointer-events:none}.toggle-switch span{will-change:transform}.toggle-switch.is-on{animation:toggleTrackOn .28s ease both}.toggle-switch.is-on::before{animation:togglePulseOn .34s ease both}.toggle-switch.is-on span{animation:toggleKnobOn .28s cubic-bezier(.2,.9,.2,1.1) both}.toggle-switch:not(.is-on) span{animation:toggleKnobOff .22s cubic-bezier(.3,.7,.2,1) both}@keyframes toggleKnobOn{0%{transform:translateX(0) scale(1)}62%{transform:translateX(1.55rem) scale(.94)}100%{transform:translateX(1.45rem) scale(1)}}@keyframes toggleKnobOff{0%{transform:translateX(1.45rem) scale(1)}100%{transform:translateX(0) scale(1)}}@keyframes togglePulseOn{0%{opacity:0;transform:translateX(-45%) scale(.72)}48%{opacity:.95;transform:translateX(18%) scale(1.04)}100%{opacity:0;transform:translateX(34%) scale(1.22)}}@keyframes toggleTrackOn{0%{filter:saturate(100%)}55%{filter:saturate(132%) brightness(1.05)}100%{filter:saturate(100%)}}
.file-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.file-toolbar-actions{display:flex;align-items:center;gap:.5rem;min-width:min(22rem,100%)}.file-toolbar-actions .field-control{min-width:0;flex:1}.file-setting-row{margin-bottom:.75rem;padding:.65rem .75rem}.file-table{border:1px solid rgba(255,255,255,.46);border-radius:.65rem;overflow:hidden;background:rgba(255,255,255,.34)}.file-table-head,.file-row{display:grid;grid-template-columns:minmax(12rem,1fr) 6rem 12rem;align-items:center}.file-table-head{border-bottom:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.42)}.file-heading{display:flex;align-items:center;justify-content:space-between;gap:.4rem;min-width:0;height:2rem;padding:0 .75rem;border-right:1px solid rgba(148,163,184,.24);background:transparent;text-align:left;font-size:.72rem;font-weight:700;color:#475569}.file-heading:last-child{border-right:0}.file-heading.is-active{color:var(--accent)}.file-table-body{display:grid}.file-row{width:100%;border:0;border-bottom:1px solid rgba(148,163,184,.18);border-radius:0;background:transparent;padding:0;text-align:left}.file-row:last-child{border-bottom:0}.file-row:hover{background:rgba(255,255,255,.46)}.file-name-cell{display:flex;align-items:center;gap:.75rem;min-width:0;padding:.55rem .75rem}.file-name-cell strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-kind{display:grid;place-items:center;width:2.2rem;height:2rem;border-radius:.3rem;background:linear-gradient(135deg,#6d5dfc,#2fbf9b);color:#fff;font-size:.64rem;font-weight:800;letter-spacing:.02em;flex:0 0 auto}.file-size,.file-date{padding:.55rem .75rem;white-space:nowrap}.empty-state{border:1px dashed rgba(255,255,255,.55);border-radius:.75rem;padding:1.5rem;text-align:center;color:#64748b;background:rgba(255,255,255,.32)}
.file-tabs{display:flex;gap:.35rem;margin-bottom:.5rem;overflow-x:auto;padding-bottom:.15rem;scrollbar-width:thin}.file-tab{display:inline-flex;align-items:center;gap:.45rem;max-width:12rem;border:1px solid rgba(255,255,255,.42);border-radius:.55rem .55rem .25rem .25rem;background:rgba(255,255,255,.38);padding:.45rem .65rem;color:#172033;font-size:.78rem;font-weight:700;white-space:nowrap}.file-tab span:first-child{overflow:hidden;text-overflow:ellipsis}.file-tab.is-active{background:rgba(255,255,255,.82);box-shadow:inset 0 -.18rem 0 var(--accent)}.file-tab-close{display:grid;place-items:center;width:1rem;height:1rem;border-radius:.25rem;background:rgba(15,23,42,.08);font-size:.7rem;line-height:1}.file-ribbon{display:grid;gap:.75rem;border:1px solid rgba(255,255,255,.46);border-radius:.75rem;background:rgba(255,255,255,.46);margin-bottom:.85rem;padding:.75rem}.file-ribbon-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.file-ribbon-title h3{font-size:.95rem;font-weight:700}.file-ribbon-title p{color:#64748b;font-size:.72rem}.file-ribbon-groups{display:flex;flex-wrap:wrap;gap:.6rem}.file-ribbon-group{display:grid;align-content:start;gap:.35rem;min-width:8rem;border-right:1px solid rgba(148,163,184,.22);padding-right:.65rem}.file-ribbon-group>span{color:#64748b;font-size:.66rem;font-weight:800;text-transform:uppercase}.file-ribbon-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}.file-ribbon-search{min-width:min(16rem,100%);flex:1 1 13rem}.file-ribbon-search .field-control{width:100%}.file-view-toggle{display:flex;align-items:center;gap:.35rem}.file-view-toggle .control-button{min-height:2rem;padding:.35rem .65rem}.file-view-toggle .control-button.is-active{background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.72));box-shadow:inset 0 -.16rem 0 var(--accent)}.file-row.is-selected{background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.7));box-shadow:inset .22rem 0 0 var(--accent)}.file-row.is-selected:hover{background:color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,.74))}.file-row.is-file-drop-target,.file-icon-tile.is-file-drop-target,.file-place.is-file-drop-target{border-color:color-mix(in srgb,var(--accent) 58%,rgba(255,255,255,.42));background:color-mix(in srgb,var(--accent) 24%,rgba(255,255,255,.72));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 52%,transparent)}.file-table.is-icons-view{border:0;background:transparent;overflow:visible}.file-table.is-icons-view .file-table-head{display:none}.file-icons-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr));gap:.7rem}.file-icon-tile{display:grid;justify-items:center;gap:.45rem;min-height:8rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.42);padding:.85rem .65rem;text-align:center}.file-icon-tile:hover,.file-icon-tile:focus-visible{background:rgba(255,255,255,.62)}.file-icon-tile.is-selected{border-color:color-mix(in srgb,var(--accent) 45%,rgba(255,255,255,.42));background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.7));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 54%,transparent)}.file-icon-art{display:grid;place-items:center;width:3.35rem;height:3.05rem;border-radius:.45rem;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;font-size:.78rem;font-weight:800;letter-spacing:.02em;box-shadow:0 12px 24px color-mix(in srgb,var(--accent) 22%,transparent)}.file-icon-name,.file-icon-meta{overflow:hidden;max-width:6.6rem;text-overflow:ellipsis;white-space:nowrap}.file-icon-name{font-size:.78rem;font-weight:700}.file-icon-meta{color:#64748b;font-size:.7rem}
/** [CODEX - 2026-06-19 02:18:00]
 * Active stylesheet needs the File Manager thumbnail frame rules so image previews and themed file glyphs render instead of raw inline images.
 */
.file-visual{position:relative;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 96%,#fff 4%),color-mix(in srgb,var(--accent-2) 88%,#fff 12%));box-shadow:0 12px 24px color-mix(in srgb,var(--accent) 22%,transparent),inset 0 1px 0 rgba(255,255,255,.42);isolation:isolate}.file-visual::after{content:attr(data-file-ext);position:absolute;left:50%;bottom:.3rem;z-index:2;max-width:80%;overflow:hidden;color:rgba(255,255,255,.94);font-size:.58rem;font-weight:850;letter-spacing:.02em;text-overflow:ellipsis;text-transform:uppercase;transform:translateX(-50%)}.file-visual-glyph{position:absolute;inset:0;z-index:1;display:block}.file-visual.is-folder{border-radius:.36rem .46rem .46rem .46rem}.file-visual.is-folder .file-visual-glyph::before{content:"";position:absolute;left:.24rem;top:.18rem;width:42%;height:28%;border-radius:.18rem .18rem 0 0;background:color-mix(in srgb,var(--accent) 72%,#fff 28%);box-shadow:inset 0 1px 0 rgba(255,255,255,.36)}.file-visual.is-folder .file-visual-glyph::after{content:"";position:absolute;inset:.45rem .18rem .2rem .18rem;border-radius:.28rem;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 82%,#fff 18%),color-mix(in srgb,var(--accent-2) 82%,#fff 18%));box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}.file-visual.is-file{border-radius:.34rem}.file-visual.is-file .file-visual-glyph::before{content:"";position:absolute;inset:.22rem .34rem .24rem .34rem;border-radius:.18rem;background:rgba(255,255,255,.9);box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}.file-visual.is-file .file-visual-glyph::after{content:"";position:absolute;right:.34rem;top:.22rem;width:.62rem;height:.62rem;background:linear-gradient(135deg,rgba(255,255,255,.18) 0 49%,color-mix(in srgb,var(--accent) 48%,#fff 52%) 50% 100%);clip-path:polygon(0 0,100% 100%,0 100%);box-shadow:-1px 1px 0 rgba(15,23,42,.08)}.file-visual.is-image{border-radius:.34rem;background:rgba(15,23,42,.1)}.file-visual.is-image::after,.file-visual.is-image .file-visual-glyph{display:none}.file-visual img{width:100%;height:100%;object-fit:cover;display:block}.file-kind.file-visual{width:2.35rem;height:2.05rem;font-size:0}.file-icon-art.file-visual{width:4.65rem;height:3.75rem;font-size:0}body.is-dark .file-visual{box-shadow:0 12px 24px rgba(2,6,23,.28),inset 0 1px 0 rgba(255,255,255,.16)}body.is-dark .file-visual.is-file .file-visual-glyph::before{background:rgba(226,232,240,.88)}
.task-manager{display:grid;gap:1rem}.task-manager-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:.75rem}.task-summary-card{display:grid;gap:.38rem;align-content:start;min-width:0}.task-summary-card strong,.task-summary-card span{min-width:0;overflow-wrap:anywhere}.task-table{border:1px solid rgba(255,255,255,.46);border-radius:.65rem;overflow:hidden;background:rgba(255,255,255,.34)}.task-table-head,.task-process-row{display:grid;grid-template-columns:minmax(13rem,1fr) 7rem 6rem minmax(14rem,auto);align-items:center}.task-table-head{gap:.5rem;border-bottom:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.42);padding:.55rem .75rem;font-size:.72rem;font-weight:700;color:#475569}.task-table-body{display:grid}.task-process-row{gap:.5rem;border-bottom:1px solid rgba(148,163,184,.18);padding:.6rem .75rem}.task-process-row:last-child{border-bottom:0}.task-process-row.is-active{background:color-mix(in srgb,var(--accent) 14%,rgba(255,255,255,.4))}.task-process-app{display:flex;align-items:center;gap:.6rem;min-width:0}.task-process-app strong,.task-process-app small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-process-app small{color:#64748b;font-size:.72rem}.task-process-actions{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}
body.is-dark .file-table{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.34)}body.is-dark .file-table-head{background:rgba(15,23,42,.68)}body.is-dark .file-heading{border-color:rgba(148,163,184,.18);color:#cbd5e1}body.is-dark .file-row{border-color:rgba(148,163,184,.14)}body.is-dark .file-row:hover{background:rgba(30,41,59,.68)}body.is-dark .file-view-toggle .control-button.is-active{background:color-mix(in srgb,var(--accent) 28%,rgba(15,23,42,.72))}body.is-dark .file-tab{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.48);color:#e5edf8}body.is-dark .file-tab.is-active,body.is-dark .file-ribbon{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.62)}body.is-dark .file-tab-close{background:rgba(148,163,184,.14)}body.is-dark .file-ribbon-title p,body.is-dark .file-ribbon-group>span{color:#94a3b8}body.is-dark .file-row.is-selected{background:color-mix(in srgb,var(--accent) 22%,rgba(15,23,42,.68))}body.is-dark .file-row.is-file-drop-target,body.is-dark .file-icon-tile.is-file-drop-target,body.is-dark .file-place.is-file-drop-target{background:color-mix(in srgb,var(--accent) 26%,rgba(15,23,42,.74));border-color:color-mix(in srgb,var(--accent) 50%,rgba(148,163,184,.24))}body.is-dark .file-icon-tile{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.48)}body.is-dark .file-icon-tile:hover,body.is-dark .file-icon-tile:focus-visible{background:rgba(30,41,59,.72)}body.is-dark .file-icon-tile.is-selected{border-color:color-mix(in srgb,var(--accent) 48%,rgba(148,163,184,.24));background:color-mix(in srgb,var(--accent) 22%,rgba(15,23,42,.68))}body.is-dark .file-icon-meta{color:#94a3b8}body.is-dark .empty-state{color:#94a3b8;background:rgba(15,23,42,.34);border-color:rgba(148,163,184,.28)}
body.is-dark .task-table{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.34)}body.is-dark .task-table-head{background:rgba(15,23,42,.68);color:#cbd5e1}body.is-dark .task-process-row{border-color:rgba(148,163,184,.14)}body.is-dark .task-process-row.is-active{background:color-mix(in srgb,var(--accent) 20%,rgba(15,23,42,.5))}body.is-dark .task-process-app small{color:#94a3b8}
body.is-dark .bg-white,body.is-dark .bg-panel,body.is-dark .bg-slate-100,body.is-dark .bg-emerald-50,body.is-dark .bg-red-50{background-color:#0f172a}body.is-dark .desktop-wallpaper::before{background:linear-gradient(115deg,rgba(15,23,42,.32),rgba(15,23,42,0) 42%),radial-gradient(circle at 50% 50%,rgba(15,23,42,.22),transparent 48%)}body.is-dark .notification-button{color:#e5edf8}body.is-dark .notification-button:hover,body.is-dark .notification-button.is-active{background:rgba(30,41,59,.72)}body.is-dark .notification-header{border-color:rgba(148,163,184,.22)}body.is-dark .notification-card{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.62)}body.is-dark .notification-card p{color:#94a3b8}body.is-dark .notification-dismiss{background:rgba(148,163,184,.12);color:#e5edf8}body.is-dark .menu-app-name{background:rgba(15,23,42,.36)}body.is-dark .menu-app-name:hover,body.is-dark .menu-app-name:focus-visible,body.is-dark .menu-button:hover{background:rgba(30,41,59,.72)}body.is-dark .context-menu{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.9);box-shadow:0 18px 55px rgba(2,6,23,.48)}body.is-dark .context-menu-item{color:#e5edf8}body.is-dark .context-menu-item:hover{background:rgba(30,41,59,.86)}body.is-dark .context-menu-separator{background:rgba(148,163,184,.22)}body.is-dark .taskbar-app.is-active{background:rgba(30,41,59,.92);box-shadow:0 10px 28px rgba(2,6,23,.36),0 0 0 1px color-mix(in srgb,var(--accent) 38%,transparent)}body.is-dark .switcher{background:rgba(2,6,23,.46)}body.is-dark .switcher-card{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.74);color:#e5edf8}body.is-dark .switcher-card small{color:#94a3b8}body.is-dark .switcher-thumb{border-color:rgba(148,163,184,.22);background:rgba(2,6,23,.36)}body.is-dark .switcher-thumb-lines i{background:rgba(148,163,184,.22)}body.is-dark .window-handle{border-color:rgba(148,163,184,.22);background:linear-gradient(180deg,rgba(30,41,59,.86),rgba(15,23,42,.48))}body.is-dark .frame-button{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.54);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .frame-button:hover{border-color:color-mix(in srgb,var(--accent) 45%,rgba(148,163,184,.24));background:rgba(30,41,59,.82)}body.is-dark .frame-button span{color:#e5edf8}body.is-dark .field-control{border-color:rgba(148,163,184,.28);background:rgba(2,6,23,.5);color:#e5edf8}body.is-dark .store-hero,body.is-dark .store-card,body.is-dark .store-detail,body.is-dark .settings-switch-row,body.is-dark .settings-select-row{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.58)}body.is-dark .store-category-tab,body.is-dark .settings-nav-item,body.is-dark .file-place{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.48);color:#e5edf8}body.is-dark .store-category-tab.is-active{background:rgba(30,41,59,.82);box-shadow:inset 0 -.22rem 0 var(--accent)}body.is-dark .settings-nav-item.is-active,body.is-dark .file-place.is-active{background:rgba(30,41,59,.82);box-shadow:inset .22rem 0 0 var(--accent)}body.is-dark .settings-switch-row small,body.is-dark .settings-select-row small{color:#94a3b8}body.is-dark .theme-swatch{border-color:rgba(148,163,184,.32);box-shadow:0 10px 24px rgba(2,6,23,.32)}body.is-dark .system-dialog{background:rgba(2,6,23,.52)}body.is-dark .mobile-nav-button{background:rgba(15,23,42,.72);color:#e5edf8}body.is-dark input::placeholder,body.is-dark textarea::placeholder{color:#94a3b8}
.editor-shell{height:100%;display:flex;flex-direction:column}.editor-area{flex:1;min-height:16rem;resize:none}.code-editor{display:grid;grid-template-columns:3.25rem minmax(0,1fr);min-height:16rem;flex:1;border:1px solid rgba(255,255,255,.48);border-radius:.55rem;overflow:hidden;background:rgba(255,255,255,.62)}.line-numbers{overflow:hidden;padding:.5rem .55rem;background:rgba(15,23,42,.08);color:#64748b;text-align:right;font:400 .82rem/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;user-select:none;white-space:pre}.code-area{min-height:100%;border:0;border-radius:0;background:transparent;font:400 .88rem/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;tab-size:2}.editor-status{border-top:1px solid rgba(148,163,184,.22);padding:.45rem .65rem;color:#64748b;font-size:.75rem;text-align:right}body.is-dark .code-editor{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.62)}body.is-dark .line-numbers{background:rgba(2,6,23,.35);color:#94a3b8}.calculator{container-type:inline-size;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.8rem;height:100%;min-height:0;max-width:none}.calc-display-panel{display:grid;gap:.35rem;border:1px solid rgba(255,255,255,.42);border-radius:.8rem;background:rgba(255,255,255,.46);padding:.8rem;box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}.calc-preview{min-height:1.1rem;overflow:hidden;color:#64748b;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.calc-display{width:100%;height:clamp(3.25rem,18cqh,5.2rem);padding:.45rem .7rem;text-align:right;font-size:clamp(1.55rem,9cqi,3rem);font-weight:700;letter-spacing:0}.calc-memory-strip{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:1rem;color:#64748b;font-size:.72rem}.calc-memory-state{color:var(--accent);font-weight:700}.calc-layout{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.65rem;min-height:0}.calc-memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem}.calc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(2.65rem,1fr);gap:.5rem;min-height:0}.calc-key,.calc-memory-key{display:grid;place-items:center;min-height:2.55rem;height:auto;border-radius:.65rem;font-size:clamp(.9rem,3.2cqi,1.15rem);font-weight:700}.calc-memory-key{min-height:2.15rem;font-size:.8rem}.calc-key.is-operator{background:color-mix(in srgb,var(--accent) 18%,rgba(255,255,255,.7));color:#10251f}.calc-key.is-utility,.calc-key.is-scientific{background:rgba(255,255,255,.42)}.calc-key.is-equals{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;box-shadow:0 12px 24px color-mix(in srgb,var(--accent) 24%,transparent)}@container (min-width:34rem){.calc-layout{grid-template-columns:minmax(7rem,.38fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:stretch}.calc-memory-grid{grid-template-columns:1fr;grid-auto-rows:minmax(2.6rem,1fr)}.calc-key.is-tall{grid-row:span 2}}body.is-dark .calc-display-panel{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.54);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .calc-preview,body.is-dark .calc-memory-strip{color:#94a3b8}body.is-dark .calc-key.is-operator{background:color-mix(in srgb,var(--accent) 28%,rgba(15,23,42,.78));color:#e5edf8}body.is-dark .calc-key.is-utility,body.is-dark .calc-key.is-scientific{background:rgba(30,41,59,.72)}.clock-face{display:grid;place-items:center;min-height:18rem;text-align:center}.big-clock{font-size:clamp(2.4rem,9vw,5rem);font-weight:700;line-height:1}
.terminal-app{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100%;min-height:0;border-radius:.65rem;background:#07111f;color:#dbeafe;overflow:hidden;font:400 .86rem/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}.terminal-output{overflow:auto;padding:.85rem;white-space:pre-wrap}.terminal-line{min-height:1.25rem}.terminal-line.is-command,.terminal-prompt{color:#67e8f9}.terminal-input-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.45rem;border-top:1px solid rgba(148,163,184,.22);padding:.65rem .85rem;background:rgba(2,6,23,.54)}.terminal-input{min-width:0;border:0;background:transparent;color:#f8fafc;outline:none;font:inherit}
.mobile-launcher-handle{display:none;position:absolute;left:50%;bottom:4.75rem;z-index:65;width:3rem;height:1.55rem;transform:translateX(-50%);border-radius:1rem 1rem .35rem .35rem;font-weight:700}
.mobile-nav{position:relative;z-index:50;height:3.75rem;display:none;align-items:center;justify-content:space-around;padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
.mobile-nav-button{height:2.5rem;min-width:4.5rem;border:0;border-radius:1.25rem;background:rgba(255,255,255,.58);font-weight:700;color:#172033}
.app-files{background:linear-gradient(135deg,#2fbf9b,#1b8eaa);color:#071816}.app-notes{background:linear-gradient(135deg,#172033,#4b5f86);color:#fff}.app-editor{background:linear-gradient(135deg,#6d5dfc,#2fbf9b);color:#fff}.app-calculator{background:linear-gradient(135deg,#f59e0b,#ef4444);color:#1f1300}.app-browser{background:linear-gradient(135deg,#0ea5e9,#22c55e);color:#06251f}.app-store{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff}.app-settings{background:linear-gradient(135deg,#f26b4f,#b7427f);color:#fff}.app-taskmanager{background:linear-gradient(135deg,#0f172a,#22c55e);color:#fff}.app-terminal{background:linear-gradient(135deg,#020617,#0891b2);color:#e0f2fe}.app-tasks{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff}.app-clock{background:linear-gradient(135deg,#0f172a,#38bdf8);color:#fff}.app-game{background:linear-gradient(135deg,#7c3aed,#f97316);color:#fff}.app-about{background:linear-gradient(135deg,#334155,#94a3b8);color:#fff}
@keyframes drawerIn{from{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}
@keyframes scaleIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}
@keyframes syncSpin{to{transform:rotate(360deg)}}
@media (max-width:760px){
  body{background:#172033}
  .h-screen{height:100dvh}
  .status-bar{height:1.45rem;padding-left:calc(.6rem + env(safe-area-inset-left));padding-right:calc(.6rem + env(safe-area-inset-right))}
  .system-text{font-size:.66rem}
  .menu-zone{flex:0 1 auto;max-width:46vw}
  .menu-bar{display:none}
  .menu-app-name{font-size:.66rem}
  #syncStatus{display:grid}
  .notification-center{left:.6rem;right:.6rem;top:2rem;width:auto;max-height:calc(100dvh - 6rem)}
  .desktop-wallpaper{padding:0 0 calc(4rem + env(safe-area-inset-bottom))}
  .taskbar{display:none}
  .mobile-nav{display:flex}
  .mobile-launcher-handle{display:block}
  .launcher-panel{left:.6rem;right:.6rem;bottom:4.35rem;top:auto;width:auto;max-height:calc(100dvh - 6.25rem);border-radius:1rem 1rem .75rem .75rem}
  .launcher-grid{max-height:calc(100dvh - 12rem)}
  .launcher-app-grid{grid-template-columns:repeat(3,1fr)}
  .launcher-item{display:grid;place-items:center;text-align:center;gap:.45rem;padding:.7rem .45rem}
  .launcher-item .app-icon{height:3rem;width:3rem}
  .launcher-item span:last-child{display:grid;gap:.1rem}
  .os-window{left:0!important;top:0!important;width:100%!important;height:100%!important;max-width:none;max-height:none;min-height:0;border-radius:1rem;transform:translateX(0);transition:opacity .18s ease,transform .18s ease}
  .os-window.is-mobile-hidden{pointer-events:none;opacity:0;transform:translateX(10%) scale(.98)}
  .window-handle{height:2.65rem;cursor:default}
  .resize-handle{display:none}
  .window-content{padding:.85rem;overflow:auto}
  .h-72{height:36dvh}
  .switcher{align-items:end;padding:.6rem .6rem calc(4.2rem + env(safe-area-inset-bottom))}
  .switcher-panel{width:100%;max-height:70dvh;border-radius:1rem}
  .switcher-grid{grid-template-columns:1fr;max-height:54dvh}.switcher-card{grid-template-columns:6rem minmax(0,1fr)}.switcher-thumb{height:4rem}
  .store-row{grid-template-columns:auto 1fr;gap:.7rem}.store-row button{grid-column:1 / -1;width:100%}
  .store-browser,.store-detail{grid-template-columns:1fr}.store-nav{grid-auto-flow:column;grid-auto-columns:max-content;overflow:auto}
  .settings-app,.file-manager{grid-template-columns:1fr;height:auto;overflow:visible}.settings-nav{position:static;height:auto;max-height:none;overflow:auto;padding-right:0}.settings-nav,.file-sidebar{grid-auto-flow:column;grid-auto-columns:max-content;overflow:auto}.file-date{display:none}
  .file-toolbar{align-items:stretch;flex-direction:column}.file-toolbar-actions{width:100%}.file-table-head,.file-row{grid-template-columns:minmax(0,1fr) 5rem}.file-table-head .file-heading:nth-child(3),.file-row .file-date{display:none}
  .task-table-head,.task-process-row{grid-template-columns:minmax(0,1fr);align-items:start}.task-table-head span:not(:first-child){display:none}.task-process-actions{justify-content:flex-start}.task-process-row{gap:.45rem}
  .calc-key{min-height:3.35rem;height:auto}
}
.notification-filters{display:flex;align-items:center;gap:.45rem;border-bottom:1px solid rgba(255,255,255,.3);padding:.65rem .8rem}.notification-filters .control-button.is-active{background:rgba(255,255,255,.72);box-shadow:inset 0 -.16rem 0 var(--accent)}.notification-filters .field-control{min-width:8.5rem;height:2rem;padding:.25rem .55rem}.notification-card.is-dismissed{opacity:.68}.notification-card.is-dismissed .notification-dismiss{display:none}body.is-dark .notification-filters{border-color:rgba(148,163,184,.22)}body.is-dark .notification-filters .control-button.is-active{background:rgba(30,41,59,.82)}
/** [CODEX - 2026-06-19 23:59:00] Maximized windows merge their frame controls into the OS top bar with a compact animated control cluster. */.system-area{transition:gap .22s ease,padding-inline .22s ease}.topbar-window-controls{display:inline-flex;align-items:center;gap:.25rem;max-width:0;overflow:hidden;opacity:0;transform:translateX(.45rem) scale(.96);transition:max-width .24s ease,opacity .18s ease,transform .24s ease;pointer-events:none}.topbar-window-controls.is-visible{max-width:7rem;opacity:1;transform:translateX(0) scale(1);pointer-events:auto}.topbar-frame-button.frame-button{width:1.65rem;height:1.35rem;border-radius:.38rem}.os-window.is-topbar-merged .window-handle{height:0!important;min-height:0;padding-top:0;padding-bottom:0;border-bottom-width:0;opacity:0;overflow:hidden;pointer-events:none;transition:height .24s ease,padding .24s ease,opacity .18s ease,border-width .24s ease}.notification-source-menu{position:relative;min-width:9rem}.notification-source-trigger{display:flex;align-items:center;justify-content:space-between;gap:.65rem;height:2rem;border:1px solid rgba(255,255,255,.48);border-radius:.55rem;background:rgba(255,255,255,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.55);padding:.25rem .6rem;color:#172033;font-size:.82rem;cursor:pointer;list-style:none}.notification-source-trigger::-webkit-details-marker{display:none}.notification-source-trigger:hover{background:rgba(255,255,255,.78)}.notification-source-chevron{width:.42rem;height:.42rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-.12rem) rotate(45deg);transition:transform .14s ease}.notification-source-menu[open] .notification-source-chevron{transform:translateY(.1rem) rotate(225deg)}.notification-source-options{position:absolute;right:0;top:calc(100% + .35rem);z-index:4;display:grid;min-width:100%;border:1px solid rgba(255,255,255,.48);border-radius:.65rem;background:rgba(255,255,255,.82);box-shadow:0 18px 45px rgba(15,23,42,.18);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);padding:.32rem}.notification-source-option{border-radius:.45rem;background:transparent;padding:.45rem .65rem;color:#172033;text-align:left;font-size:.8rem;white-space:nowrap}.notification-source-option:hover,.notification-source-option.is-active{background:color-mix(in srgb,var(--accent) 16%,rgba(255,255,255,.72))}body.is-dark .notification-source-trigger{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.58);color:#e5edf8;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .notification-source-trigger:hover{background:rgba(30,41,59,.82)}body.is-dark .notification-source-options{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.92);box-shadow:0 18px 45px rgba(2,6,23,.42)}body.is-dark .notification-source-option{color:#e5edf8}body.is-dark .notification-source-option:hover,body.is-dark .notification-source-option.is-active{background:rgba(30,41,59,.86)}body.is-high-contrast .notification-source-trigger,body.is-high-contrast .notification-source-options,body.is-high-contrast .notification-source-option{border-color:rgba(0,0,0,.55);background:#fff;color:#0f172a}body.is-high-contrast.is-dark .notification-source-trigger,body.is-high-contrast.is-dark .notification-source-options,body.is-high-contrast.is-dark .notification-source-option{border-color:rgba(255,255,255,.62);background:#0f172a;color:#f8fafc}
.system-select{display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-width:9rem;min-height:2.25rem;border:1px solid rgba(255,255,255,.48);border-radius:.55rem;background:rgba(255,255,255,.74);box-shadow:inset 0 1px 0 rgba(255,255,255,.55);padding:.45rem .7rem;color:#172033;font-size:.875rem;text-align:left;transition:transform .14s ease,background .14s ease,border-color .14s ease}.system-select:hover,.system-select:focus-visible{background:rgba(255,255,255,.86);transform:translateY(-1px)}.system-select-chevron{width:.42rem;height:.42rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-.12rem) rotate(45deg);flex:0 0 auto}body.is-dark .system-select{border-color:rgba(148,163,184,.28);background:rgba(2,6,23,.5);color:#e5edf8;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .system-select:hover,body.is-dark .system-select:focus-visible{background:rgba(30,41,59,.82)}body.is-high-contrast .system-select{border-color:rgba(0,0,0,.55);background:#fff;color:#0f172a}body.is-high-contrast.is-dark .system-select{border-color:rgba(255,255,255,.62);background:#0f172a;color:#f8fafc}
/** [CODEX - 2026-06-13 16:52:00] Compact sync status control replaces passive top-bar sync text and exposes conflicts in a system dropdown. */
.sync-status{position:relative;display:grid;place-items:center}.sync-status-button{display:grid;place-items:center;width:1.45rem;height:1.45rem;border:1px solid rgba(255,255,255,.46);border-radius:.45rem;background:rgba(255,255,255,.5);color:#172033;box-shadow:inset 0 1px 0 rgba(255,255,255,.55);cursor:pointer;transition:transform .14s ease,background .14s ease,border-color .14s ease}.sync-status-button:hover,.sync-status-button:focus-visible,.sync-status-button[aria-expanded=true]{background:rgba(255,255,255,.78);transform:translateY(-1px)}.sync-status-icon{position:relative;width:.82rem;height:.82rem}.sync-status-icon::before,.sync-status-icon::after{content:"";position:absolute;border-radius:999px;background:currentColor}.sync-status[data-sync-state=ok] .sync-status-button{color:#047857}.sync-status[data-sync-state=ok] .sync-status-icon::before{left:.12rem;top:.42rem;width:.32rem;height:.12rem;transform:rotate(45deg)}.sync-status[data-sync-state=ok] .sync-status-icon::after{left:.32rem;top:.32rem;width:.56rem;height:.12rem;transform:rotate(-45deg)}.sync-status[data-sync-state=error] .sync-status-button{color:#b91c1c}.sync-status[data-sync-state=error] .sync-status-icon::before,.sync-status[data-sync-state=error] .sync-status-icon::after{left:.08rem;top:.36rem;width:.72rem;height:.12rem}.sync-status[data-sync-state=error] .sync-status-icon::before{transform:rotate(45deg)}.sync-status[data-sync-state=error] .sync-status-icon::after{transform:rotate(-45deg)}.sync-status[data-sync-state=pending] .sync-status-icon{border:.12rem solid currentColor;border-right-color:transparent;border-radius:999px;animation:syncSpin .7s linear infinite}.sync-status[data-sync-state=pending] .sync-status-icon::before,.sync-status[data-sync-state=pending] .sync-status-icon::after{display:none}.sync-status-panel{position:absolute;top:calc(100% + .45rem);left:50%;z-index:130;display:grid;gap:.55rem;width:min(18rem,calc(100vw - 1.2rem));border:1px solid rgba(255,255,255,.48);border-radius:.75rem;background:rgba(255,255,255,.86);box-shadow:0 18px 45px rgba(15,23,42,.2);backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);padding:.65rem;transform:translateX(-50%)}.sync-status-panel.hidden{display:none}.sync-status-heading{display:grid;gap:.12rem}.sync-status-heading strong{font-size:.82rem}.sync-status-heading small,.sync-status-entry small{color:#64748b;font-size:.72rem}.sync-status-list{display:grid;gap:.35rem}.sync-status-entry{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;border-radius:.55rem;padding:.45rem;background:rgba(255,255,255,.48)}.sync-status-entry span{display:grid;min-width:0}.sync-status-entry strong,.sync-status-entry small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-status-empty{border-radius:.55rem;background:rgba(255,255,255,.48);padding:.55rem;color:#64748b;font-size:.78rem}body.is-dark .sync-status-button{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.58);color:#e5edf8;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .sync-status-button:hover,body.is-dark .sync-status-button:focus-visible,body.is-dark .sync-status-button[aria-expanded=true]{background:rgba(30,41,59,.82)}body.is-dark .sync-status[data-sync-state=ok] .sync-status-button{color:#34d399}body.is-dark .sync-status[data-sync-state=error] .sync-status-button{color:#f87171}body.is-dark .sync-status-panel{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.92);box-shadow:0 18px 45px rgba(2,6,23,.42)}body.is-dark .sync-status-heading small,body.is-dark .sync-status-entry small,body.is-dark .sync-status-empty{color:#94a3b8}body.is-dark .sync-status-entry,body.is-dark .sync-status-empty{background:rgba(30,41,59,.62)}body.is-high-contrast .sync-status-button,body.is-high-contrast .sync-status-panel,body.is-high-contrast .sync-status-entry,body.is-high-contrast .sync-status-empty{border-color:rgba(0,0,0,.55);background:#fff;color:#0f172a}body.is-high-contrast.is-dark .sync-status-button,body.is-high-contrast.is-dark .sync-status-panel,body.is-high-contrast.is-dark .sync-status-entry,body.is-high-contrast.is-dark .sync-status-empty{border-color:rgba(255,255,255,.62);background:#0f172a;color:#f8fafc}
.settings-shortcuts{display:grid;gap:.55rem}.settings-shortcut-head,.settings-shortcut-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(9rem,.8fr);align-items:center;gap:1rem}.settings-shortcut-head{padding:0 .75rem;color:#64748b;font-size:.72rem;font-weight:800;text-transform:uppercase}.shortcut-keys{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.shortcut-keys kbd{min-height:1.55rem;border:1px solid rgba(15,23,42,.16);border-radius:.38rem;background:rgba(255,255,255,.72);padding:.2rem .45rem;color:#334155;font-size:.72rem;font-weight:800;box-shadow:inset 0 -1px 0 rgba(15,23,42,.12)}body.is-dark .settings-shortcut-head{color:#94a3b8}body.is-dark .shortcut-keys kbd{border-color:rgba(148,163,184,.28);background:rgba(15,23,42,.72);color:#e5edf8}
.settings-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.settings-actions .control-button{min-height:2.15rem}body.is-dark .settings-actions .control-button{background:rgba(15,23,42,.58);color:#e5edf8}
.settings-search{position:relative;display:block;margin-bottom:.35rem}.settings-search .field-control{padding-left:2.25rem}.settings-search-icon{position:absolute;left:.78rem;top:50%;z-index:1;width:.78rem;height:.78rem;border:.12rem solid currentColor;border-radius:50%;color:#64748b;transform:translateY(-56%);pointer-events:none}.settings-search-icon::after{content:"";position:absolute;right:-.28rem;bottom:-.2rem;width:.42rem;height:.12rem;border-radius:999px;background:currentColor;transform:rotate(45deg)}.settings-nav-item{display:flex;align-items:center;gap:.6rem}.settings-section-icon{display:grid;place-items:center;width:2.15rem;height:2.15rem;aspect-ratio:1 / 1;border-radius:.55rem;background:color-mix(in srgb,var(--accent) 16%,rgba(255,255,255,.72));color:#172033;box-shadow:inset 0 1px 0 rgba(255,255,255,.48);flex:0 0 auto}.settings-section-icon svg{width:1.28rem;height:1.28rem;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.settings-home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14.5rem,1fr));gap:.9rem}.settings-section-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;min-height:5.7rem;border:1px solid rgba(255,255,255,.48);border-radius:.85rem;background:rgba(255,255,255,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.55);padding:1rem;text-align:left;transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease}.settings-section-card > span,.settings-switch-row > span:first-child,.settings-select-row > span:first-child{display:grid;gap:.24rem;min-width:0}.settings-section-card:hover,.settings-section-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 42%,rgba(255,255,255,.48));background:rgba(255,255,255,.78);box-shadow:0 12px 30px color-mix(in srgb,var(--accent) 16%,transparent),inset 0 1px 0 rgba(255,255,255,.62);transform:translateY(-1px)}.settings-section-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem}.settings-section-card small{display:-webkit-box;overflow:hidden;color:#64748b;font-size:.76rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2}.settings-search-results .settings-section-card{grid-template-columns:auto minmax(0,1fr);width:100%;min-height:4.8rem}.settings-search-results{display:grid;grid-template-columns:1fr;gap:.55rem}.settings-search-result small b{color:#334155;font-weight:700}body.is-dark .settings-search-icon{color:#94a3b8}body.is-dark .settings-section-icon{background:color-mix(in srgb,var(--accent) 24%,rgba(15,23,42,.68));color:#e5edf8;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .settings-section-card{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .settings-section-card:hover,body.is-dark .settings-section-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 45%,rgba(148,163,184,.24));background:rgba(30,41,59,.82);box-shadow:0 12px 30px rgba(2,6,23,.28),inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .settings-section-card small{color:#94a3b8}body.is-dark .settings-search-result small b{color:#e5edf8}
.settings-permissions{display:grid;gap:.65rem}.settings-permission-row{display:grid;gap:.7rem}.settings-permission-head{display:flex;align-items:center;gap:.65rem}.settings-permission-head small{display:block;color:#64748b;font-size:.75rem}.settings-permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem}.settings-permission-grid span{display:grid;gap:.12rem;border:1px solid rgba(15,23,42,.08);border-radius:.55rem;background:rgba(255,255,255,.38);padding:.55rem}.settings-permission-grid strong{font-size:.72rem;text-transform:uppercase;color:#64748b}.settings-permission-grid small{color:#475569;font-size:.76rem;line-height:1.35}body.is-dark .settings-permission-head small,body.is-dark .settings-permission-grid strong,body.is-dark .settings-permission-grid small{color:#94a3b8}body.is-dark .settings-permission-grid span{border-color:rgba(148,163,184,.2);background:rgba(15,23,42,.42)}@media (max-width:760px){.settings-permission-grid{grid-template-columns:1fr}}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}body.is-reduced-motion *,body.is-reduced-motion *::before,body.is-reduced-motion *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}body.is-high-contrast{--accent:#006bff;--accent-2:#001a72}body.is-high-contrast .glass-panel,body.is-high-contrast .os-window,body.is-high-contrast .status-bar,body.is-high-contrast .taskbar,body.is-high-contrast .mobile-nav,body.is-high-contrast .notification-center{border-color:rgba(0,0,0,.62);background:rgba(255,255,255,.92);backdrop-filter:none;-webkit-backdrop-filter:none}body.is-high-contrast .control-button,body.is-high-contrast .field-control,body.is-high-contrast .settings-switch-row,body.is-high-contrast .settings-select-row,body.is-high-contrast .content-row,body.is-high-contrast .launcher-item,body.is-high-contrast .file-row,body.is-high-contrast .store-card,body.is-high-contrast .notification-card{border-color:rgba(0,0,0,.55);background:#fff;color:#0f172a}body.is-high-contrast .text-slate-500,body.is-high-contrast small{color:#1f2937}body.is-high-contrast.is-dark .glass-panel,body.is-high-contrast.is-dark .os-window,body.is-high-contrast.is-dark .status-bar,body.is-high-contrast.is-dark .taskbar,body.is-high-contrast.is-dark .mobile-nav,body.is-high-contrast.is-dark .notification-center{border-color:rgba(255,255,255,.72);background:#020617}body.is-high-contrast.is-dark .control-button,body.is-high-contrast.is-dark .field-control,body.is-high-contrast.is-dark .settings-switch-row,body.is-high-contrast.is-dark .settings-select-row,body.is-high-contrast.is-dark .content-row,body.is-high-contrast.is-dark .launcher-item,body.is-high-contrast.is-dark .file-row,body.is-high-contrast.is-dark .store-card,body.is-high-contrast.is-dark .notification-card{border-color:rgba(255,255,255,.62);background:#0f172a;color:#f8fafc}body.is-high-contrast.is-dark .text-slate-500,body.is-high-contrast.is-dark small{color:#dbeafe}
.brickdash-game{display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;height:100%;min-height:0;container-type:size}.brickdash-hud{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.48);padding:.75rem}.brickdash-guide-button{min-height:2rem;padding:.35rem .65rem;font-size:.78rem}.system-guide{display:grid;gap:.85rem}.system-guide-head{display:flex;align-items:center;gap:.75rem}.system-guide-head span,.system-guide-section{display:grid;gap:.25rem}.system-guide-head small,.system-guide-summary,.system-guide-section p{color:#64748b;font-size:.85rem;line-height:1.45}.system-guide-sections{display:grid;gap:.6rem}.brickdash-board{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.4rem;width:min(100%,24rem);width:min(100%,24rem,calc((100cqh - 7.5rem) * 1.2));min-width:min(100%,14rem);justify-self:center;outline:none}.brickdash-cell{aspect-ratio:1 / 1;border:1px solid rgba(15,23,42,.12);border-radius:.45rem;background:linear-gradient(135deg,rgba(255,255,255,.38),rgba(255,255,255,0)),color-mix(in srgb,var(--accent) 12%,#e2e8f0);box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 8px 16px rgba(15,23,42,.08)}.brickdash-cell.is-player{border-color:color-mix(in srgb,var(--accent-2) 68%,#0f172a);background:linear-gradient(135deg,rgba(255,255,255,.32),rgba(255,255,255,0) 46%),linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 12px 24px color-mix(in srgb,var(--accent) 34%,transparent)}.brickdash-cell.is-target{border-color:#ca8a04;background:linear-gradient(135deg,rgba(255,255,255,.38),rgba(255,255,255,0) 48%),linear-gradient(135deg,#fde047,#f97316);box-shadow:inset 0 1px 0 rgba(255,255,255,.44),0 12px 24px rgba(249,115,22,.28)}.brickdash-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.brickdash-controls .control-button{min-width:0;padding-inline:.4rem}@container (max-width:22rem){.brickdash-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}body.is-dark .brickdash-hud{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.54)}body.is-dark .brickdash-cell{border-color:rgba(148,163,184,.2);background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,0)),color-mix(in srgb,var(--accent) 18%,#1e293b);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 8px 18px rgba(2,6,23,.24)}body.is-dark .brickdash-cell.is-player{border-color:color-mix(in srgb,var(--accent) 54%,#e5edf8);background:linear-gradient(135deg,rgba(255,255,255,.24),rgba(255,255,255,0) 44%),linear-gradient(135deg,var(--accent),var(--accent-2))}body.is-dark .brickdash-cell.is-target{border-color:#facc15;background:linear-gradient(135deg,rgba(255,255,255,.26),rgba(255,255,255,0) 48%),linear-gradient(135deg,#fde047,#f97316)}body.is-dark .system-guide-head small,body.is-dark .system-guide-summary,body.is-dark .system-guide-section p{color:#94a3b8}
.snake-game{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;align-items:center;gap:.75rem;height:100%;min-height:0;container-type:size}.snake-hud{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.55rem .8rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.48);padding:.75rem}.snake-guide-button{min-height:2rem;padding:.35rem .65rem;font-size:.78rem}.snake-board{display:grid;grid-template-columns:repeat(16,minmax(0,1fr));gap:.18rem;width:min(100%,25rem);width:min(100%,25rem,calc(100cqh - 9rem));min-width:min(100%,15rem);justify-self:center;border:1px solid rgba(15,23,42,.1);border-radius:.85rem;background:linear-gradient(135deg,#dbeafe,#dcfce7);padding:.45rem;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}.snake-cell{aspect-ratio:1 / 1;border-radius:.22rem;background:rgba(255,255,255,.58);box-shadow:inset 0 1px 0 rgba(255,255,255,.42)}.snake-cell.is-body{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:inset 0 1px 0 rgba(255,255,255,.32)}.snake-cell.is-head{background:linear-gradient(135deg,#14b8a6,#0f766e);box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 0 0 2px rgba(15,118,110,.24)}.snake-cell.is-food{background:linear-gradient(135deg,#fb7185,#dc2626);box-shadow:inset 0 1px 0 rgba(255,255,255,.34),0 0 0 2px rgba(220,38,38,.22)}.snake-controls,.snake-pad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.snake-pad{grid-template-columns:repeat(4,minmax(0,1fr))}.snake-controls .control-button,.snake-pad .control-button{min-width:0;padding-inline:.4rem}body.is-dark .snake-hud{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.54)}body.is-dark .snake-board{border-color:rgba(148,163,184,.22);background:linear-gradient(135deg,#0f172a,#164e63);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}body.is-dark .snake-cell{background:rgba(15,23,42,.82);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}body.is-dark .snake-cell.is-body{background:linear-gradient(135deg,#22c55e,#15803d)}body.is-dark .snake-cell.is-head{background:linear-gradient(135deg,#5eead4,#0f766e)}body.is-dark .snake-cell.is-food{background:linear-gradient(135deg,#fb7185,#b91c1c)}
.browser-shell{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:.5rem;height:100%;min-height:0}.browser-tabs{display:flex;gap:.35rem;overflow-x:auto;padding-bottom:.1rem;scrollbar-width:thin}.browser-tab{display:inline-flex;align-items:center;gap:.45rem;max-width:11rem;border:1px solid rgba(255,255,255,.42);border-radius:.55rem;background:rgba(255,255,255,.42);padding:.45rem .65rem;font-size:.78rem;font-weight:700;white-space:nowrap;cursor:pointer;transition:background .14s ease,box-shadow .14s ease,opacity .14s ease,transform .14s ease}.browser-tab span{overflow:hidden;text-overflow:ellipsis}.browser-tab.is-active{background:rgba(255,255,255,.82);box-shadow:inset 0 -.18rem 0 var(--accent)}.browser-tab.is-dragging{opacity:.55}.browser-tab.is-drop-target{box-shadow:inset 0 -.18rem 0 var(--accent),0 0 0 2px color-mix(in srgb,var(--accent) 42%,transparent)}.browser-tab-close{display:grid;place-items:center;width:1rem;height:1rem;border-radius:.25rem;color:inherit}.browser-tab-close:hover{background:rgba(15,23,42,.08)}.browser-new-tab{width:2.2rem;justify-content:center}.browser-toolbar{display:grid;grid-template-columns:repeat(3,2.3rem) minmax(0,1fr) repeat(2,2.3rem);gap:.4rem;align-items:center}.browser-nav-button{display:grid;place-items:center;min-width:0;height:2.25rem;padding:0;font-size:.95rem}.browser-icon{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.browser-address-form{min-width:0}.browser-address{width:100%;height:2.25rem}.browser-meta{display:flex;flex-wrap:wrap;gap:.45rem .85rem;color:#64748b;font-size:.72rem}.browser-content{position:relative;min-height:0;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.34);overflow:hidden}.browser-frame-host,.browser-frame,.browser-native-surface{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}.browser-frame-host{background:transparent}.browser-native-surface{display:grid;place-items:center;color:#64748b;font-size:.85rem}.browser-fallback-note{position:absolute;left:.75rem;right:.75rem;bottom:.75rem;border:1px solid rgba(255,255,255,.5);border-radius:.65rem;background:rgba(255,255,255,.78);padding:.65rem .75rem;color:#475569;font-size:.75rem;pointer-events:none}body.is-dark .browser-tab,body.is-dark .browser-content,body.is-dark .browser-fallback-note{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.62);color:#e5edf8}body.is-dark .browser-tab.is-active{background:rgba(30,41,59,.82)}body.is-dark .browser-meta,body.is-dark .browser-native-surface{color:#94a3b8}
.browser-start{position:absolute;inset:0;display:grid;gap:1rem;align-content:start;overflow:auto;padding:1rem;background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,255,255,.38))}.browser-start.hidden{display:none}.browser-start-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid rgba(255,255,255,.5);border-radius:.85rem;background:rgba(255,255,255,.5);padding:1rem}.browser-start-hero h2{font-size:1.05rem;font-weight:800}.browser-start-hero p,.browser-start-section h3,.browser-start-card small,.browser-start-empty{color:#64748b;font-size:.78rem}.browser-start-section{display:grid;gap:.55rem}.browser-start-section h3{font-weight:800;text-transform:uppercase}.browser-start-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.65rem}.browser-start-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;border:1px solid rgba(255,255,255,.45);border-radius:.75rem;background:rgba(255,255,255,.5);padding:.75rem;text-align:left;transition:background .14s ease,transform .14s ease,box-shadow .14s ease}.browser-start-card:hover,.browser-start-card:focus-visible{background:rgba(255,255,255,.78);box-shadow:0 12px 30px rgba(15,23,42,.12);transform:translateY(-1px)}.browser-start-card span:nth-child(2){display:grid;min-width:0}.browser-start-card strong,.browser-start-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.browser-start-card b{display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:.4rem;color:#64748b}.browser-start-card b:hover{background:rgba(15,23,42,.08);color:#172033}.browser-start-favicon{display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:.62rem;background:color-mix(in srgb,var(--accent) 18%,#fff);color:#172033;font-size:.78rem;font-weight:900}.browser-start-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;gap:.55rem}.browser-start-empty{border:1px dashed rgba(100,116,139,.34);border-radius:.75rem;padding:.9rem}body.is-dark .browser-start-hero,body.is-dark .browser-start-card,body.is-dark .browser-start-empty{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.62);color:#e5edf8}body.is-dark .browser-start{background:linear-gradient(135deg,rgba(15,23,42,.82),rgba(15,23,42,.48))}body.is-dark .browser-start-card:hover,body.is-dark .browser-start-card:focus-visible{background:rgba(30,41,59,.82);box-shadow:0 12px 30px rgba(2,6,23,.28)}body.is-dark .browser-start-hero p,body.is-dark .browser-start-section h3,body.is-dark .browser-start-card small,body.is-dark .browser-start-empty{color:#94a3b8}@media (max-width:760px){.browser-start-form{grid-template-columns:1fr}.browser-start-hero{align-items:stretch;flex-direction:column}}
/** [CODEX - 2026-06-14 04:54:00] Open web package surfaces mirror the source stylesheet for direct serving. */
.packaged-game,.paint-app,.draw-app,.mermaid-app,.sandspiel-app{display:grid;gap:.75rem;height:100%;min-height:0}.paint-app,.draw-app,.sandspiel-app{grid-template-rows:auto minmax(0,1fr)}.packaged-game{grid-template-rows:auto minmax(0,1fr) auto;align-items:center;container-type:size}.packaged-game-hud,.paint-toolbar,.draw-toolbar,.mermaid-toolbar,.sandspiel-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.48);padding:.75rem}.packaged-game-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:.45rem;width:100%}.game2048-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;width:min(100%,22rem);justify-self:center;border-radius:1rem;background:#a78b71;padding:.75rem;outline:none}.game2048-cell{display:grid;place-items:center;aspect-ratio:1 / 1;border-radius:.65rem;background:#cdc1b4;color:#172033;font-size:clamp(1.2rem,6vw,2.3rem);font-weight:900}.game2048-cell:not(.tile-0){background:linear-gradient(135deg,#fef3c7,#f59e0b);box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}.game2048-cell.tile-4,.game2048-cell.tile-8{background:linear-gradient(135deg,#fed7aa,#fb923c)}.game2048-cell.tile-16,.game2048-cell.tile-32,.game2048-cell.tile-64{background:linear-gradient(135deg,#fdba74,#ef4444);color:#fff}.game2048-cell.tile-128,.game2048-cell.tile-256,.game2048-cell.tile-512,.game2048-cell.tile-1024,.game2048-cell.tile-2048{background:linear-gradient(135deg,#a7f3d0,#14b8a6);color:#06251f}.paint-canvas,.draw-canvas,.sandspiel-canvas,.mermaid-preview{min-width:0;width:100%;height:100%;min-height:0;border:1px solid rgba(255,255,255,.42);border-radius:.8rem;background:#fff}.paint-canvas,.sandspiel-canvas{touch-action:none}.sandspiel-canvas{background:#0f172a;image-rendering:pixelated}.draw-canvas{touch-action:none;background:#fffdf7}.draw-canvas rect,.draw-canvas line,.draw-canvas polyline{fill:rgba(20,184,166,.08);stroke:#0f766e;stroke-width:5;stroke-linecap:round;stroke-linejoin:round}.draw-canvas polyline{fill:none}.mermaid-app{grid-template-columns:minmax(15rem,.8fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.mermaid-toolbar{grid-column:1 / -1}.mermaid-source{min-height:0;resize:none;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.mermaid-preview{overflow:auto;padding:.75rem}.mermaid-svg{width:100%;min-width:34rem;height:auto}.mermaid-svg rect{fill:#ecfeff;stroke:#0f766e;stroke-width:2}.mermaid-svg line{stroke:#475569;stroke-width:2.4}.mermaid-svg text{dominant-baseline:middle;text-anchor:middle;fill:#0f172a;font-size:14px;font-weight:700}body.is-dark .packaged-game-hud,body.is-dark .paint-toolbar,body.is-dark .draw-toolbar,body.is-dark .mermaid-toolbar,body.is-dark .sandspiel-toolbar{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.54)}body.is-dark .paint-canvas,body.is-dark .draw-canvas,body.is-dark .mermaid-preview{border-color:rgba(148,163,184,.22);background:#111827}body.is-dark .game2048-board{background:#5b4638}body.is-dark .game2048-cell{background:#475569;color:#f8fafc}body.is-dark .draw-canvas rect,body.is-dark .draw-canvas line,body.is-dark .draw-canvas polyline{stroke:#5eead4}body.is-dark .mermaid-svg rect{fill:#0f172a;stroke:#5eead4}body.is-dark .mermaid-svg line{stroke:#cbd5e1}body.is-dark .mermaid-svg text{fill:#e2e8f0}@media (max-width:760px){.mermaid-app{grid-template-columns:1fr;grid-template-rows:auto minmax(10rem,.7fr) minmax(0,1fr)}}
/** [CODEX - 2026-06-13 23:06:00] Browser favicon and window-title icon sizing for the directly served stylesheet. */
.browser-tab-favicon,.window-title-favicon{display:grid;flex:0 0 auto;place-items:center;width:1rem;height:1rem;border-radius:.25rem;background:rgba(255,255,255,.58);color:#334155;font-size:.58rem;font-weight:900;line-height:1;overflow:hidden}.browser-tab-favicon img,.window-title-favicon img{width:100%;height:100%;object-fit:contain}.window-title{display:inline-flex;align-items:center;gap:.45rem;min-width:0}.window-title-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.is-dark .browser-tab-favicon,body.is-dark .window-title-favicon{background:rgba(15,23,42,.78);color:#e2e8f0}
/** [CODEX - 2026-06-13 23:59:00] Settings search remains pinned at the top of the Settings navigation while content scrolls. */
.settings-search{position:sticky;top:0;z-index:4;padding-bottom:.35rem;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.72));backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}body.is-dark .settings-search{background:linear-gradient(180deg,rgba(15,23,42,.94),rgba(15,23,42,.72))}
/** [CODEX - 2026-06-14 00:18:00] Taskbar thumbnails mirror Open Apps switcher cards with close in the top-right corner. */
.taskbar-preview{position:relative;display:grid;grid-template-columns:8rem minmax(0,1fr);align-items:center;gap:.75rem;width:17rem;min-height:6.4rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.52);padding:.8rem 2.45rem .8rem .8rem;text-align:left;transition:transform .08s ease,background .08s ease,border-color .08s ease,box-shadow .08s ease}.taskbar-preview.is-active{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 34%,transparent),0 18px 42px rgba(15,23,42,.26)}.taskbar-preview .switcher-thumb{width:100%;height:4.8rem}.preview-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:700}.preview-close{position:absolute;top:.55rem;right:.55rem;display:grid;place-items:center;width:1.35rem;height:1.35rem;border-radius:.35rem;background:rgba(15,23,42,.08);font-size:.8rem;font-weight:800}.preview-close:hover{background:rgba(239,68,68,.18);color:#991b1b}body.is-dark .taskbar-preview{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.74);color:#e5edf8}body.is-dark .taskbar-preview.is-active{background:#0f172a}
/** [CODEX - 2026-06-14 00:31:00] Taskbar preview panels clamp to viewport edges and stack into a scrollable list when too wide. */
.taskbar-previews{left:var(--taskbar-preview-left,50%);transform:translate(var(--taskbar-preview-shift,-50%),.35rem)}.taskbar-group:hover .taskbar-previews,.taskbar-group:focus-within .taskbar-previews{transform:translate(var(--taskbar-preview-shift,-50%),0)}.taskbar-previews.is-stacked{flex-direction:column;align-items:stretch;width:min(17rem,calc(100vw - 1rem));max-height:min(60dvh,28rem);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.taskbar-previews.is-stacked .taskbar-preview{width:100%}
/** [CODEX - 2026-06-13 20:40:16] Invisible taskbar preview bridge preserves hover while crossing the gap from icon to previews. */
.taskbar-preview-bridge{position:absolute;left:-.75rem;right:-.75rem;bottom:100%;height:1rem;pointer-events:auto}
/** [CODEX - 2026-06-13 21:08:00] Upstream bundled app frames keep real third-party web apps contained inside LinkOS windows. */
.upstream-app-shell{display:grid;grid-template-rows:auto minmax(0,1fr);gap:.75rem;height:100%;min-height:0}.upstream-app-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.48);padding:.75rem}.upstream-app-bar span{color:#64748b;font-size:.8rem}.upstream-app-frame,.excalidraw-direct-root{width:100%;height:100%;min-height:0;border:1px solid rgba(255,255,255,.42);border-radius:.8rem;background:#fff;overflow:hidden}body.is-dark .upstream-app-bar{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.54)}body.is-dark .upstream-app-bar span{color:#94a3b8}body.is-dark .upstream-app-frame,body.is-dark .excalidraw-direct-root{border-color:rgba(148,163,184,.22);background:#111827}
/* [CODEX - 2026-06-14 23:05:00] Immersive no-padding styling for iframe-hosted 2048, JS Paint and Excalidraw only. */.os-window[data-app-id=game2048] .window-content,.os-window[data-app-id=jspaint] .window-content,.os-window[data-app-id=excalidraw] .window-content{padding:0;overflow:hidden}.os-window.is-maximized[data-app-id=game2048] .window-content,.os-window.is-maximized[data-app-id=jspaint] .window-content,.os-window.is-maximized[data-app-id=excalidraw] .window-content{padding:0}.os-window[data-app-id=game2048] .upstream-app-shell,.os-window[data-app-id=jspaint] .upstream-app-shell,.os-window[data-app-id=excalidraw] .upstream-app-shell{display:block;height:100%;min-height:0}.os-window[data-app-id=game2048] .upstream-app-bar,.os-window[data-app-id=jspaint] .upstream-app-bar,.os-window[data-app-id=excalidraw] .upstream-app-bar{display:none}.os-window[data-app-id=game2048] .upstream-app-frame,.os-window[data-app-id=jspaint] .upstream-app-frame,.os-window[data-app-id=excalidraw] .upstream-app-frame{display:block;width:100%;height:100%;min-height:0;border:0;border-radius:0}

/* [CODEX - 2026-06-14 23:59:00] Image Viewer system app styling mirrors the source stylesheet without rebuilding recovered shell chrome. */.app-imageviewer{background:linear-gradient(135deg,#38bdf8,#6366f1);color:#f8fafc}.image-viewer-app{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.65rem;height:100%;min-height:0}/** [CODEX - 2026-06-19 23:58:40] Image Viewer fullscreen turns the app surface into a clean immersive canvas without losing controls. */.image-viewer-app:fullscreen,.image-viewer-app.is-app-fullscreen{width:100vw;height:100vh;padding:1rem;background:#020617}/** [CODEX - 2026-06-20 00:21:00] Internal app fullscreen overlays LinkOS without exiting the host browser/PWA fullscreen state. */.image-viewer-app.is-app-fullscreen{position:fixed;inset:0;z-index:10020}.image-viewer-toolbar,.image-viewer-status{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid rgba(255,255,255,.42);border-radius:.75rem;background:rgba(255,255,255,.48);padding:.65rem .75rem}.image-viewer-file{display:grid;min-width:0;gap:.15rem}.image-viewer-file strong,.image-viewer-file small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-viewer-file small,.image-viewer-status{color:#64748b;font-size:.78rem}.image-viewer-controls{display:flex;flex:0 0 auto;align-items:center;gap:.35rem}.image-viewer-controls .control-button{display:grid;place-items:center;width:2.1rem;height:2.1rem;min-width:0;padding:0}.image-viewer-controls svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.image-viewer-stage{display:grid;place-items:center;min-height:0;border:1px solid rgba(255,255,255,.42);border-radius:.85rem;background:radial-gradient(circle at 50% 35%,rgba(255,255,255,.32),rgba(15,23,42,.08) 42%,rgba(15,23,42,.16));overflow:auto}/** [CODEX - 2026-06-19 23:48:16] Fit-to-window uses computed transform scale, while actual-size and manual zoom keep scrollable overflow. */.image-viewer-stage.is-fit{position:relative;overflow:hidden}.image-viewer-image{display:block;max-width:none;max-height:none;transform-origin:center;transition:transform .14s ease;user-select:none}/** [CODEX - 2026-06-20 00:08:00] Fit mode removes the natural image box from layout so large images truly fit the visible stage. */.image-viewer-image.is-fit{position:absolute;left:50%;top:50%;max-width:none;max-height:none;object-fit:contain}body.is-dark .image-viewer-toolbar,body.is-dark .image-viewer-status,body.is-dark .image-viewer-stage{border-color:rgba(148,163,184,.22);background:rgba(15,23,42,.54)}body.is-dark .image-viewer-file small,body.is-dark .image-viewer-status{color:#94a3b8}@media (max-width:760px){.image-viewer-toolbar{align-items:stretch;flex-direction:column}.image-viewer-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.image-viewer-controls .control-button{width:100%}}
/** [CODEX - 2026-06-19 01:49:00]
 * Icon surfaces share the desktop Install LinkOS radius so app, drive, and file glyphs feel like one OS family.
 */
.app-icon,.dock-icon,.mini-app-icon,.desktop-os-icon,.desktop-drive-icon,.file-visual,.file-kind.file-visual,.file-icon-art.file-visual,.browser-start-favicon{border-radius:.65rem!important}
/** [CODEX - 2026-06-19 12:04:00]
 * Desktop-mounted drives show the same drop affordance as File Manager folder targets.
 */
.desktop-icon.is-file-drop-target{background:color-mix(in srgb,var(--accent) 24%,rgba(255,255,255,.22));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent) 58%,rgba(255,255,255,.45));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
/** [CODEX - 2026-06-19 13:06:00]
 * Cut File Manager items stay visible but semi-transparent like native desktop file managers.
 */
.file-row.is-cut,.file-icon-tile.is-cut{opacity:.46;filter:saturate(.72)}.file-row.is-cut:hover,.file-icon-tile.is-cut:hover{opacity:.62}
/** [CODEX - 2026-06-19 13:52:00]
 * Mounted folders keep the folder glyph and gain a cloud badge; remote mount roots render as drive glyphs in Files.
 */
.file-visual.is-mounted-folder::after{content:"";position:absolute;left:auto;right:.12rem;bottom:.08rem;z-index:4;width:.88rem;height:.48rem;border-radius:.42rem;background:rgba(255,255,255,.94);box-shadow:-.22rem .03rem 0 -.02rem rgba(255,255,255,.94),.2rem .04rem 0 -.03rem rgba(255,255,255,.94),0 0 0 1px color-mix(in srgb,var(--accent) 28%,rgba(15,23,42,.12)),0 .12rem .28rem rgba(15,23,42,.2);transform:none}.file-kind.file-visual.is-mounted-folder::after{right:-.02rem;bottom:-.02rem;transform:scale(.72);transform-origin:right bottom}.file-visual.is-drive::after{display:none}.file-visual.is-drive .file-visual-glyph::before{content:"";position:absolute;left:18%;right:18%;bottom:20%;height:28%;border-radius:.18rem .18rem .42rem .42rem;background:rgba(255,255,255,.92);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--accent) 32%,rgba(15,23,42,.12))}.file-visual.is-drive .file-visual-glyph::after{content:"";position:absolute;left:22%;right:22%;top:24%;height:34%;border-radius:.28rem .28rem .08rem .08rem;background:rgba(255,255,255,.72);transform:perspective(2.5rem) rotateX(22deg);transform-origin:bottom;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}.file-visual.is-drive{border-radius:.65rem}.file-visual.is-drive .file-visual-glyph{display:block}.desktop-mounted-folder-icon{display:grid;place-items:center;width:2.5rem;height:2.5rem}
/** [CODEX - 2026-06-19 13:52:00]
 * Active versioned CSS also needs the desktop drive glyph used by mounted remote drives.
 */
.desktop-drive-icon{position:relative;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:.62rem;background:linear-gradient(145deg,var(--accent),var(--accent-2));box-shadow:0 12px 28px rgba(15,23,42,.28),inset 0 1px 0 rgba(255,255,255,.42)}.desktop-drive-icon::before{content:"";position:absolute;left:.42rem;right:.42rem;bottom:.48rem;height:.72rem;border-radius:.18rem .18rem .32rem .32rem;background:rgba(255,255,255,.92);box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--accent) 32%,rgba(15,23,42,.12))}.desktop-drive-icon::after{content:"";position:absolute;left:.52rem;right:.52rem;top:.58rem;height:.82rem;border-radius:.22rem .22rem .08rem .08rem;background:rgba(255,255,255,.74);transform:perspective(2.4rem) rotateX(22deg);transform-origin:bottom;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}.desktop-drive-icon span{position:absolute;right:.58rem;bottom:.66rem;z-index:2;width:.34rem;height:.34rem;border-radius:999px;background:var(--accent);box-shadow:-.48rem 0 0 color-mix(in srgb,var(--accent-2) 82%,#fff 18%)}body.is-dark .desktop-drive-icon{box-shadow:0 12px 28px rgba(2,6,23,.42),inset 0 1px 0 rgba(255,255,255,.18)}
/** [CODEX - 2026-06-20 10:36:00] Text Editor and Image Viewer use flush native app surfaces with docked toolbars/status bars. */
.os-window[data-app-id=editor] .window-content,.os-window[data-app-id=imageviewer] .window-content{padding:0;overflow:hidden}.os-window.is-maximized[data-app-id=editor] .window-content,.os-window.is-maximized[data-app-id=imageviewer] .window-content{padding:0}.editor-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;background:rgba(255,255,255,.26)}.editor-shell>.flex:first-child{min-height:2.85rem;border-bottom:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.5);padding:.45rem .65rem}.editor-area{height:100%;min-height:0;resize:none}.code-editor{min-height:0;border:0;border-radius:0}.editor-shell .code-editor.mt-4{margin-top:0}.editor-status{min-height:1.8rem;background:rgba(255,255,255,.5)}body.is-dark .editor-shell{background:rgba(15,23,42,.34)}body.is-dark .editor-shell>.flex:first-child,body.is-dark .editor-status{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.58)}.image-viewer-app{gap:0;background:rgba(255,255,255,.18)}.image-viewer-app:fullscreen,.image-viewer-app.is-app-fullscreen{padding:0}.image-viewer-toolbar,.image-viewer-status{border:0 solid rgba(148,163,184,.22);border-radius:0;background:rgba(255,255,255,.5);padding:.45rem .65rem}.image-viewer-toolbar{min-height:2.85rem;border-bottom-width:1px}.image-viewer-status{min-height:1.8rem;border-top-width:1px}.image-viewer-stage{border:0;border-radius:0}body.is-dark .image-viewer-app{background:rgba(15,23,42,.34)}body.is-dark .image-viewer-toolbar,body.is-dark .image-viewer-status{border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.58)}body.is-dark .image-viewer-stage{background:radial-gradient(circle at 50% 35%,rgba(30,41,59,.52),rgba(2,6,23,.48) 45%,rgba(2,6,23,.7))}@media (max-width:760px){.image-viewer-toolbar{align-items:center;flex-direction:row;flex-wrap:wrap}.image-viewer-controls{display:flex;flex-wrap:wrap}.image-viewer-controls .control-button{width:2.1rem}}
/** [CODEX - 2026-06-20 10:58:00] Empty top-bar space becomes draggable title-bar surface while maximized window chrome is merged. */
.status-bar.is-window-drag-surface{cursor:grab}.status-bar.is-window-drag-surface button,.status-bar.is-window-drag-surface input,.status-bar.is-window-drag-surface .menu-button,.status-bar.is-window-drag-surface .menu-app-name,.status-bar.is-window-drag-surface .sync-status,.status-bar.is-window-drag-surface .topbar-window-controls{cursor:pointer}
