:root{font-family:Tahoma,"Microsoft YaHei",sans-serif;color:#1b1b1b;background:#080f14;font-synthesis:none}*{box-sizing:border-box}html,body{height:100%;margin:0}body{overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}[hidden]{display:none!important}.screen{position:fixed;inset:0}.win-panel{background:#c5c5c5;border:2px solid;border-color:#fff #3c3c3c #3c3c3c #fff;box-shadow:1px 1px 0 #000,2px 2px 0 #000}.win-title{height:28px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 6px;background:linear-gradient(90deg,#082a74,#1772aa);color:#fff;font-size:13px;font-weight:700;white-space:nowrap}.win-button{min-height:30px;padding:4px 11px;background:#c8c8c8;color:#111;border:2px solid;border-color:#fff #515151 #515151 #fff;box-shadow:1px 1px 0 #1f1f1f}.win-button:hover:not(:disabled){background:#e0e0e0}.win-button:active:not(:disabled),.win-button.is-active{border-color:#515151 #fff #fff #515151;box-shadow:inset 1px 1px 0 #333}.win-button.primary{font-weight:700}.icon-button{width:22px;height:20px;padding:0;line-height:14px;font-size:15px;font-weight:700}.boot-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:radial-gradient(ellipse at 50% 78%,#143879 0,#07163c 48%,#040b20 100%);color:#f2f3ed;text-align:center;isolation:isolate}.boot-grain{position:absolute;inset:0;z-index:-1;opacity:.15;background:repeating-linear-gradient(0deg,transparent 0 3px,#fff 4px 5px);animation:grain-move 5s linear infinite}.boot-logo{display:flex;align-items:center;gap:16px;font-family:Georgia,serif;font-size:clamp(37px,7vw,84px);font-weight:700;letter-spacing:-.06em;text-shadow:3px 4px #000}.boot-logo b{color:#e4c67b;font-style:italic}.boot-cat{font-family:Tahoma,sans-serif;font-size:.7em;letter-spacing:-.5em;color:#e8e2c6;filter:drop-shadow(2px 4px 0 #000);padding-right:.45em}.boot-screen p{margin:0;color:#bdcde5;font-size:14px;letter-spacing:.4em}.boot-screen small{position:absolute;bottom:38px;color:#7994c0;font-size:11px}.boot-progress{width:min(340px,70vw);height:19px;margin-top:22px;padding:3px;border:2px solid;border-color:#aebad4 #152244 #152244 #aebad4;background:#0b1534}.boot-progress i{display:block;width:100%;height:100%;background:repeating-linear-gradient(90deg,#d1dfed 0 18px,#20498f 18px 23px);animation:loading 1.8s steps(18,end) both}@keyframes loading{from{width:0}to{width:100%}}@keyframes grain-move{to{transform:translateY(5px)}}.login-screen{display:grid;place-items:center;padding:20px;background:#008282;background-image:repeating-linear-gradient(0deg,#fff1 0 1px,transparent 1px 4px),linear-gradient(138deg,#007273,#0c666e 45%,#163e5a)}.login-panel{width:min(470px,100%)}.title-dots{letter-spacing:4px}.login-body{display:grid;grid-template-columns:70px 1fr;column-gap:18px;padding:28px 25px 16px}.login-avatar{width:64px;height:64px;display:grid;place-items:center;border:2px solid;border-color:#535353 #fff #fff #535353;background:#ece9d6;font-size:32px}.login-copy{align-self:center}.login-copy p{margin:0 0 5px;font-size:17px}.login-copy small{color:#565656;font-size:11px}.login-body form{grid-column:1/-1;margin-top:25px}.login-body label{display:block;font-size:13px;margin-bottom:9px;font-weight:700}.pin-row{display:flex;gap:9px}.pin-row input{min-width:0;flex:1;height:34px;padding:4px 10px;border:2px solid;border-color:#4b4b4b #fff #fff #4b4b4b;background:#fff;letter-spacing:.6em;font-size:19px}.pin-row button{white-space:nowrap}#pin-help{font-size:11px;color:#565656;line-height:1.6;margin:8px 0 0}.error{min-height:1.3em;margin:8px 0 0;color:#9a1717;font-size:12px}.login-foot{border-top:1px solid #eee;padding:8px 13px;color:#666;font-size:10px;letter-spacing:.15em}.desktop-screen{overflow:hidden;background:#027777}.wallpaper{position:absolute;inset:0 0 42px;background:radial-gradient(circle at 50% 50%,#276a6e,#06606b 65%,#064853);overflow:hidden}.wallpaper:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,#fff1 0 1px,transparent 1px 26px),repeating-linear-gradient(0deg,#0001 0 1px,transparent 1px 26px);opacity:.3}.poster-art,.wallpaper-copy{position:absolute;left:50%;top:50%;width:min(100%,calc((100vh - 42px) * 1.578947));aspect-ratio:1200/760;transform:translate(-50%,-50%)}.poster-art{height:auto;filter:drop-shadow(18px 18px 0 #002c3899);image-rendering:auto}.wallpaper-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0 0 7% 7%;pointer-events:none;color:#172427;text-shadow:1px 1px #fff8}.wallpaper-kicker{font-size:clamp(9px,1vw,14px);letter-spacing:.2em;font-weight:bold}.wallpaper-time{margin:7px 0 20px;font-family:Georgia,serif;font-size:clamp(48px,8vw,118px);line-height:1;letter-spacing:-.07em;font-weight:800}.wallpaper-copy p{max-width:54%;margin:0;font-size:clamp(15px,1.9vw,27px);line-height:1.6;font-weight:900;letter-spacing:.04em}.wallpaper-copy span{margin-top:14px;font-size:clamp(10px,1vw,14px);letter-spacing:.2em}.scanline{position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#06151917 4px 5px);mix-blend-mode:multiply;animation:grain-move 7s linear infinite}.poster-cat{transform-origin:870px 420px;animation:cat-breathe 4s ease-in-out infinite}.poster-spark{animation:twinkle 1.6s steps(2,end) infinite}@keyframes cat-breathe{50%{transform:translateY(5px) scaleY(.991)}}@keyframes twinkle{50%{opacity:.15}}.theme-dusk .poster-art{filter:hue-rotate(40deg) saturate(.9) drop-shadow(18px 18px 0 #1a244c99)}.theme-dusk{background:radial-gradient(circle,#574d67,#252b53 70%,#1c2143)}.theme-mint .poster-art{filter:hue-rotate(160deg) saturate(.75) drop-shadow(18px 18px 0 #163e3b99)}.theme-mint{background:radial-gradient(circle,#629a8f,#245f6e 70%,#15434c)}.desktop-icons{position:absolute;inset:12px auto 54px 14px;display:grid;grid-auto-flow:column;grid-template-rows:repeat(6,88px);grid-auto-columns:90px;gap:8px;align-content:start;z-index:2;max-width:calc(100vw - 25px);overflow:auto;scrollbar-width:thin}.desktop-icon{width:86px;height:82px;border:1px solid transparent;border-radius:0;background:transparent;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;padding:5px 3px;text-shadow:1px 1px #0a1a22,-1px 1px #0a1a22;user-select:none}.desktop-icon:hover,.desktop-icon:focus-visible,.desktop-icon.selected{border:1px dotted #fff;background:#001e7980;outline:0}.desktop-icon.drop-target{background:#fff6a855;border:1px solid #fff0a0}.desktop-icon span{width:100%;font-size:12px;line-height:1.2;text-align:center;overflow-wrap:anywhere}.pixel-icon{display:block;width:39px;height:39px;flex:none;filter:drop-shadow(2px 3px 0 #09151b8c)}.window-layer{position:absolute;inset:0 0 42px;pointer-events:none;z-index:5}.app-window{position:absolute;min-width:300px;min-height:210px;display:flex;flex-direction:column;pointer-events:auto;max-width:calc(100vw - 16px);max-height:calc(100% - 16px);overflow:hidden}.app-window .win-title{cursor:move;flex:none}.title-group{display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis}.title-group .pixel-icon{width:16px;height:16px;filter:none}.title-controls{display:flex;gap:3px}.window-body{min-height:0;overflow:auto;flex:1;padding:12px;background:#c4c4c4}.window-status{display:flex;align-items:center;min-height:23px;padding:3px 7px;border-top:1px solid #777;background:#c5c5c5;font-size:11px;color:#555}.store-window{width:min(750px,calc(100vw - 24px));height:min(550px,calc(100vh - 78px));left:50%;top:45%;transform:translate(-50%,-50%)}.store-toolbar{display:flex;align-items:center;gap:8px;padding:4px 5px;border:2px solid;border-color:#858585 #fff #fff #858585;margin-bottom:11px;background:#e7e7e7;font-size:12px}.store-toolbar strong{margin-right:auto}.store-layout{display:grid;grid-template-columns:200px 1fr;gap:12px;height:calc(100% - 43px)}.store-sidebar,.store-detail{border:2px solid;border-color:#555 #fff #fff #555;background:#f3f1e7;min-height:0;overflow:auto}.store-sidebar{padding:9px}.store-sidebar h3{margin:0 0 7px;font-size:12px;color:#555;font-weight:400}.store-tab{width:100%;padding:8px;border:1px solid transparent;background:transparent;text-align:left;font-size:13px}.store-tab:hover,.store-tab.active{background:#0c4d87;color:#fff}.store-tab small{float:right;opacity:.8}.store-detail{padding:17px}.app-list{display:grid;gap:10px}.app-card{display:flex;align-items:center;gap:11px;width:100%;padding:10px;border:1px solid #ada899;background:#fff;text-align:left}.app-card:hover,.app-card:focus-visible{border-color:#254d86;background:#eef4fb}.app-card .pixel-icon{width:34px;height:34px}.app-card-copy{display:grid;gap:3px}.app-card-copy strong{font-size:13px}.app-card-copy small{font-size:11px;color:#656565}.app-card-badge{margin-left:auto;font-size:10px;color:#496967;white-space:nowrap}.app-detail{display:grid;grid-template-columns:55px 1fr;gap:11px;align-items:start}.app-detail>.pixel-icon{width:50px;height:50px}.app-detail h2{margin:1px 0 6px;font-size:20px}.app-detail .tag{font-size:11px;color:#65737c}.app-detail p{grid-column:1/-1;font-size:13px;line-height:1.7;margin:4px 0 0}.detail-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}.empty-state{font-size:13px;color:#697171;padding:21px;text-align:center;border:1px dashed #aaa}.folder-window{width:min(480px,calc(100vw - 24px));height:min(340px,calc(100vh - 80px));left:50%;top:43%;transform:translate(-50%,-50%)}.folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:8px;align-content:start}.folder-grid .desktop-icon{color:#111;text-shadow:none}.folder-grid .desktop-icon:hover{background:#b7d0e4}.folder-grid .desktop-icon.drop-target{background:#f8d784}.folder-hint{font-size:11px;color:#666;margin:0 0 8px}.start-menu{position:absolute;left:3px;bottom:42px;z-index:20;width:255px;padding:3px;display:flex;box-shadow:2px 2px 0 #202020}.start-banner{width:27px;display:flex;align-items:end;justify-content:center;padding-bottom:9px;background:linear-gradient(#0b2862,#4c7fac);writing-mode:vertical-rl;transform:none;color:#fff;font-weight:bold;font-size:17px;letter-spacing:.1em;rotate:180deg}.start-items{flex:1;display:flex;flex-direction:column;padding:2px}.start-items button{display:flex;align-items:center;gap:9px;width:100%;min-height:38px;border:0;background:transparent;text-align:left;padding:4px 8px;font-size:12px}.start-items button:hover,.start-items button:focus-visible{background:#0c4d87;color:#fff;outline:0}.start-items button .pixel-icon{width:23px;height:23px}.start-separator{margin:4px 5px;border-top:1px solid #808080;border-bottom:1px solid #fff}.taskbar{position:absolute;left:0;right:0;bottom:0;z-index:25;height:42px;display:flex;align-items:center;gap:4px;padding:3px 5px;background:#c4c4c4;border-top:2px solid #fff}.start-button{height:32px;display:flex;align-items:center;gap:5px;font-weight:900;font-size:15px}.start-flag{font-size:25px;line-height:17px;color:#0b597d;text-shadow:1px 1px #b2392c}.taskbar-divider{height:27px;border-left:1px solid #777;border-right:1px solid #fff;margin:0 2px}.task-buttons{min-width:0;display:flex;gap:4px;flex:1;overflow:auto;scrollbar-width:none}.task-button{max-width:150px;min-width:85px;height:30px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;text-align:left}.tray{min-width:85px;height:30px;display:flex;align-items:center;justify-content:center;gap:7px;border:2px solid;border-color:#747474 #fff #fff #747474;font-size:12px}.tray-cat{font-size:15px}.context-menu{position:absolute;z-index:50;width:190px;padding:3px}.context-menu button{display:block;width:100%;height:29px;padding:4px 10px;border:0;background:transparent;text-align:left;font-size:12px}.context-menu button:hover,.context-menu button:focus-visible{background:#0c4d87;color:#fff;outline:0}.context-divider{height:2px;margin:4px;border-top:1px solid #777;border-bottom:1px solid #fff}.m98-corner-layer{position:absolute;right:14px;bottom:56px;z-index:35;pointer-events:none}.m98-corner-card{width:min(355px,calc(100vw - 20px));pointer-events:auto;animation:m98-corner-enter .42s cubic-bezier(.2,.8,.2,1) both}.m98-corner-title{background:linear-gradient(90deg,#102f79,#0055a3)}.m98-corner-title button{background:#c4c4c4;color:#111}.m98-corner-body{padding:14px;background:#fffdf0}.m98-corner-eyebrow{color:#aa2f29;font-weight:800;font-size:11px;letter-spacing:.13em}.m98-corner-body h3{margin:9px 0 5px;font-size:22px;line-height:1.2}.m98-corner-body p{font-size:12px;line-height:1.6;color:#414345;margin:0 0 13px}.m98-corner-visual{height:68px;display:flex;align-items:center;justify-content:center;gap:11px;margin-bottom:12px;border:2px solid #1e394c;background:repeating-linear-gradient(45deg,#ece4c7 0 8px,#d6d0b7 8px 16px);color:#133247;font-size:24px;font-weight:900;text-shadow:1px 1px #fff}.m98-corner-visual span{font-size:33px}.m98-corner-actions{display:flex;align-items:center;justify-content:space-between;gap:6px}.m98-corner-actions button{font-size:11px}.m98-corner-permanent{border:0;background:transparent;color:#fff;text-decoration:underline;padding:4px;white-space:nowrap;font-size:10px}.m98-corner-permanent:hover{color:#ffdf9e}.m98-corner-footer{padding:4px 9px;background:#d9d9d9;border-top:1px solid #aaa;color:#565656;font-size:10px;text-align:right}@keyframes m98-corner-enter{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.context-menu,.start-menu,.m98-corner-card{filter:drop-shadow(3px 4px 0 #00192277)}.toast{position:absolute;left:50%;bottom:58px;z-index:60;transform:translateX(-50%);min-width:230px;max-width:calc(100vw - 25px);padding:9px 14px;font-size:12px;text-align:center}.dialog-window{width:min(420px,calc(100vw - 24px));height:auto;min-height:190px;left:50%;top:43%;transform:translate(-50%,-50%)}.dialog-window .window-body{padding:18px}.dialog-window p{font-size:13px;line-height:1.7;margin:0 0 14px}.dialog-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:14px}.dialog-window input{width:100%;padding:6px;border:2px solid;border-color:#555 #fff #fff #555;background:#fff}.wallpaper-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.wallpaper-choice{height:125px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px;padding:9px;border:3px solid #fff;box-shadow:2px 2px 0 #555;background:linear-gradient(135deg,#ddd7c4 40%,#1b2628 41%);font-size:12px}.wallpaper-choice.dusk{filter:hue-rotate(40deg)}.wallpaper-choice.mint{filter:hue-rotate(160deg)}.wallpaper-choice.selected{border-color:#bc382f}.wallpaper-choice span{background:#fff;padding:2px 5px}.wallpaper-window{width:min(550px,calc(100vw - 24px));height:290px;left:50%;top:43%;transform:translate(-50%,-50%)}
@media(max-width:650px){.wallpaper{background:#064d54}.poster-art,.wallpaper-copy{top:48%;width:100%;}.wallpaper-copy{padding-left:7%;padding-bottom:3%}.wallpaper-kicker{font-size:7px}.wallpaper-time{font-size:clamp(32px,9vw,58px);margin:1px 0 4px}.wallpaper-copy p{font-size:clamp(9px,2.3vw,14px);max-width:57%;line-height:1.3}.wallpaper-copy span{font-size:7px;margin-top:5px}.desktop-icons{grid-template-rows:repeat(5,78px);grid-auto-columns:77px;gap:3px;inset:9px auto 52px 8px}.desktop-icon{width:74px;height:72px}.desktop-icon .pixel-icon{width:32px;height:32px}.desktop-icon span{font-size:10px}.store-window{height:calc(100vh - 68px);top:8px;left:8px;transform:none;width:calc(100vw - 16px)}.store-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:6px}.store-sidebar{display:flex;gap:3px;padding:4px;overflow:visible}.store-sidebar h3{display:none}.store-tab{width:auto;white-space:nowrap;font-size:11px;padding:6px}.store-detail{padding:10px}.folder-window,.wallpaper-window{left:8px;top:9vh;transform:none;width:calc(100vw - 16px)}.m98-corner-layer{right:8px;bottom:49px}.m98-corner-card{width:min(345px,calc(100vw - 16px))}.m98-corner-body h3{font-size:18px}.m98-corner-visual{height:49px;font-size:18px}.m98-corner-visual span{font-size:22px}.task-button{min-width:75px;max-width:95px}.tray{min-width:70px}.tray-cat{display:none}.start-menu{max-width:calc(100vw - 8px)}.wallpaper-choices{gap:5px}.wallpaper-choice{height:90px;font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}
.install-meter{height:22px;padding:3px;border:2px solid;border-color:#555 #fff #fff #555;background:#e8e8e8}.install-meter i{display:block;height:100%;width:0;background:repeating-linear-gradient(90deg,#135b85 0 14px,#e8e8e8 14px 17px);transition:width .15s linear}.install-percent{text-align:right;font-weight:800;font-size:12px;margin-top:5px}.cup-window{width:min(850px,calc(100vw - 24px));height:min(620px,calc(100vh - 76px));left:50%;top:46%;transform:translate(-50%,-50%)}.cup-window .window-body{padding:0;background:#f4f0e2}@media(max-width:650px){.cup-window{left:8px;top:8px;transform:none;width:calc(100vw - 16px);height:calc(100vh - 66px)}}

.operation-layer{position:absolute;inset:0 0 42px;z-index:45;display:grid;place-items:center;padding:12px;background:#09182470;pointer-events:auto}.operation-layer:empty{display:none}.operation-card{width:min(395px,calc(100vw - 24px));box-shadow:4px 5px 0 #00192277}.operation-card .m98-corner-body{background:#f5f3e9}.operation-heading{min-height:1.3em}.cup-install-choices{display:flex;align-items:flex-end;gap:10px;margin-top:18px}.cup-install-yes{flex:1;min-height:64px;font-size:19px;background:#f2ce51}.cup-install-no{width:42px;min-width:42px;min-height:21px;padding:1px 2px;font-size:10px}.cup-install-prompt .m98-corner-footer{text-align:left}.cup-installing::after{content:"";position:absolute;inset:0 0 42px;z-index:34;pointer-events:none;background:repeating-linear-gradient(0deg,#ff264126 0 2px,#00e6ff20 2px 5px,transparent 5px 9px);mix-blend-mode:screen;animation:cup-virus-flash 1.1s steps(3,end) infinite}.cup-installing .wallpaper{animation:cup-virus-wallpaper .85s steps(2,end) infinite}.cup-installing .taskbar{animation:cup-virus-taskbar 1.3s steps(2,end) infinite}.cup-installing .install-card{animation:cup-virus-dialog 1.6s steps(2,end) infinite}@keyframes cup-virus-flash{0%,65%,100%{opacity:0}12%{opacity:.7}20%{opacity:.13}45%{opacity:.38}70%{opacity:.5}}@keyframes cup-virus-wallpaper{0%,100%{filter:none}35%{filter:hue-rotate(115deg) contrast(1.25)}65%{filter:hue-rotate(-125deg) contrast(1.1)}}@keyframes cup-virus-taskbar{0%,100%{filter:none}45%{filter:hue-rotate(130deg)}}@keyframes cup-virus-dialog{0%,100%{transform:none}30%{transform:translate(2px,-1px)}55%{transform:translate(-2px,1px)}}@media(prefers-reduced-motion:reduce){.cup-installing::after,.cup-installing .wallpaper,.cup-installing .taskbar,.cup-installing .install-card{animation:none}.cup-installing::after{opacity:.12}}
.follow-actions{display:flex;flex-wrap:wrap;gap:8px}.follow-actions .win-button{flex:1;min-width:140px;font-size:12px}

.app-card.coming-soon{background:#e9e7dc;border-style:dashed;cursor:default}.app-card.coming-soon:hover{background:#e9e7dc;border-color:#ada899}.coming-soon .pixel-icon{opacity:.82}.coming-soon-button{margin-left:auto;flex:none;min-height:25px;padding:3px 7px;font-size:10px;white-space:nowrap}.coming-soon-button:disabled{opacity:1;color:#666;background:#d8d6cc;cursor:default}@media(max-width:650px){.app-card.coming-soon{flex-wrap:wrap}.coming-soon .app-card-copy{min-width:calc(100% - 50px);flex:1}.coming-soon-button{margin-left:45px}.store-sidebar{flex-wrap:wrap}}

/* Desktop icons use free pixel positions, with folder contents retaining their grid. */
.context-menu .context-check{display:inline-block;width:16px;margin-right:2px;font-weight:700}
.desktop-icons{inset:0 0 42px 0;display:block;max-width:none;overflow:hidden;pointer-events:none}
.desktop-icons>.desktop-icon{position:absolute;pointer-events:auto;cursor:grab}
.desktop-icons>.desktop-icon:active{cursor:grabbing}
.desktop-icons.has-icon-overflow{overflow-x:hidden;overflow-y:scroll;pointer-events:auto;overscroll-behavior:contain}
.app-window.minimized{display:none}
.app-window.maximized{left:0;top:0;width:100%;height:100%;max-width:none;max-height:none;min-width:0;min-height:0;transform:none}
.app-window.maximized .win-title{cursor:default}
.title-controls{flex:none}
.title-controls .icon-button{height:20px;min-height:20px;line-height:12px}
@media(max-width:650px){.desktop-icons{inset:0 0 42px 0}}

/* Windows 98 style installed-program flyout. Hover on desktop; tap or focus also opens it. */
.start-programs{position:relative}
.start-programs-trigger .start-submenu-arrow{margin-left:auto;font-size:10px}
.start-submenu{display:none;position:absolute;left:100%;bottom:0;z-index:2;width:236px;max-height:min(340px,calc(100vh - 62px));padding:4px;overflow:auto;background:#c5c5c5;box-shadow:3px 3px 0 #00192277}
.start-programs:hover .start-submenu,.start-programs:focus-within .start-submenu,.start-programs.open .start-submenu{display:block}
.start-programs:hover>.start-programs-trigger,.start-programs.open>.start-programs-trigger{background:#0c4d87;color:#fff}
.start-submenu button{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.start-submenu p{margin:7px 9px;color:#565656;font-size:12px}
@media(max-width:580px){.start-submenu{left:0;bottom:calc(100% + 4px);width:min(236px,calc(100vw - 8px));max-height:calc(100vh - 320px)}}

/* The picker swaps the desktop character, keeping the desktop background intact. */
.wallpaper-picker-window{width:min(760px,calc(100vw - 24px));height:min(640px,calc(100vh - 76px));left:50%;top:45%;transform:translate(-50%,-50%)}
.wallpaper-picker-window .window-body{padding:14px;background:#e6e5de}
.wallpaper-picker-intro{margin:0 0 13px;font-size:12px;line-height:1.5;color:#414547}
.wallpaper-picker-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.wallpaper-picker-card{display:flex;min-width:0;flex-direction:column;align-items:stretch;padding:5px;border:2px solid;border-color:#fff #5b5b5b #5b5b5b #fff;background:#f7f6f0;color:#24292d;text-align:center}
.wallpaper-picker-card:hover,.wallpaper-picker-card:focus-visible{background:#e9f2f9;outline:2px solid #2b5a83;outline-offset:-2px}
.wallpaper-picker-card.selected{background:#e2edf6;border-color:#22629c}
.wallpaper-picker-preview{display:grid;place-items:center;width:100%;height:170px;overflow:hidden;background:linear-gradient(135deg,#ece6dc,#dad4cc)}
.wallpaper-picker-preview img{display:block;width:100%;height:100%;object-fit:contain;filter:none;box-shadow:none}
.wallpaper-picker-caption{min-height:31px;margin-top:6px;font-size:12px;font-weight:700;line-height:1.3}
.wallpaper-picker-state{padding:2px 0 4px;font-size:10px;color:#4e6576}
.wallpaper-picker-card.selected .wallpaper-picker-state{color:#135485;font-weight:700}
@media(max-width:750px){.wallpaper-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.wallpaper-picker-preview{height:145px}}
@media(max-width:480px){.wallpaper-picker-window{left:8px;top:8px;transform:none;width:calc(100vw - 16px);height:calc(100vh - 66px)}.wallpaper-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.wallpaper-picker-preview{height:150px}}

/* The tray cat is a notification button; it only blinks for an unread release. */
.tray-notice{position:relative;flex:none;display:grid;place-items:center;width:20px;height:20px;min-width:20px;min-height:20px;padding:0;border:0;background:transparent;box-shadow:none}
.tray-notice:focus-visible{outline:2px dotted currentColor;outline-offset:2px}
.tray-notice.unread .tray-cat{animation:tray-cat-alert 1.1s steps(2,end) infinite}
@keyframes tray-cat-alert{50%{opacity:.18;filter:brightness(1.8) sepia(1) saturate(3)}}
@media(prefers-reduced-motion:reduce){.tray-notice.unread .tray-cat{animation:none}.tray-notice.unread::after{content:"";position:absolute;right:-1px;top:-2px;width:6px;height:6px;border-radius:50%;background:#ce3b2a}}
@media(max-width:650px){#notification-button .tray-cat{display:block}}
.release-notes-window{width:min(500px,calc(100vw - 24px));height:min(360px,calc(100vh - 76px));left:50%;top:43%;transform:translate(-50%,-50%)}
.release-notes-window .window-body{padding:16px;background:#f1eee3}
.release-notes-header{padding:13px 15px;border:2px solid;border-color:#fff #777 #777 #fff;background:#fffdf5}
.release-notes-header span{display:block;font-size:10px;font-weight:700;letter-spacing:.2em;color:#376280}
.release-notes-header h2{margin:8px 0;font-size:21px;line-height:1.3}
.release-notes-header time{font-size:11px;color:#62666a}
.release-notes-list{margin:14px 0 0;padding-left:24px;font-size:13px;line-height:1.7}
.release-notes-list li+li{margin-top:8px}

/* Canonical charging badge: the same gold lightning on every marked app icon. */
.app-icon--charging{position:relative;display:inline-block;flex:none;width:39px;height:39px;line-height:0;vertical-align:middle}
.app-icon--charging>.pixel-icon{width:100%;height:100%}
.app-icon--charging>.charging-badge{position:absolute;right:-5px;top:-6px;display:block;width:17px;height:21px;line-height:0;pointer-events:none}
.charging-spark{display:block;width:100%;height:100%;overflow:visible;transform-origin:50% 65%;animation:charging-spark-pulse 2.4s ease-in-out infinite}
.app-card .app-icon--charging{width:34px;height:34px}
.app-detail>.app-icon--charging{width:50px;height:50px}
.desktop-icon .app-icon--charging{width:39px;height:39px}
.start-submenu .app-icon--charging{width:23px;height:23px}
.start-items button .app-icon--charging>.pixel-icon{width:100%;height:100%}
.start-submenu .charging-badge{right:-4px;top:-4px;width:12px;height:15px}
@keyframes charging-spark-pulse{0%,65%,100%{transform:translateY(0) rotate(0);opacity:1}78%{transform:translateY(-1px) rotate(6deg);opacity:.64}88%{transform:translateY(0) rotate(-4deg);opacity:1}}
@media(max-width:650px){.desktop-icon .app-icon--charging{width:32px;height:32px}}
@media(prefers-reduced-motion:reduce){.charging-spark{animation:none!important;transform:none;opacity:1}}

/* Password recovery stays on the login screen, above the desktop layer. */
.forgot-pin{margin-top:8px;min-height:32px;font-size:12px}
.pin-reset-dialog{position:fixed;width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 32px);margin:auto;padding:0;color:#1b1b1b;overflow:auto}
.pin-reset-dialog::backdrop{background:#091824a6}
.pin-reset-body{padding:22px}
.pin-reset-copy{margin:0 0 14px;font-size:19px;font-weight:700;line-height:1.5}
#pin-reset-note{margin:0;font-size:13px;line-height:1.7;color:#464646}
.pin-reset-body .dialog-actions{flex-wrap:wrap}
.pin-reset-dialog button:focus-visible,.forgot-pin:focus-visible{outline:2px dotted #082a74;outline-offset:2px}
