/* Monochrome Program Manager desktop. */
body{height:auto;min-height:100%;overflow:auto;font-family:'Courier New',monospace;background:#fff;color:#111}
.desktop{min-height:100dvh;display:grid;grid-template-columns:126px minmax(280px,1fr) 286px;grid-template-rows:auto 1fr;gap:28px;padding:145px 38px 100px;align-items:start;max-width:1600px;margin:auto}
.desktop-bar{position:absolute;inset:0 0 auto;display:flex;justify-content:space-between;gap:16px;background:#111;color:#fff;padding:9px 20px;font-size:12px;letter-spacing:1px}
.site-header{top:53px;left:38px;right:38px;align-items:center}.brand span{font-family:'Times New Roman',serif;font-size:26px;letter-spacing:-1px}.brand img{width:42px;height:42px}.menu-toggle{width:56px;height:56px}
.desktop-files{grid-row:1/3;display:grid;gap:24px;padding-top:8px}.desktop-files>a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;width:126px;padding:8px 2px;font-size:13px;font-weight:bold}.desktop-files>a:hover,.desktop-files>a:focus-visible{background:#111;color:#fff;outline-offset:2px}.desktop-files small{font-size:10px;font-weight:normal}.file-icon{position:relative;display:grid;place-items:center;width:43px;height:49px;background:#fff;color:#111;border:2px solid #111;box-shadow:3px 3px 0 #999;font:700 19px 'Courier New',monospace;margin-bottom:4px}.file-icon:after{content:'';position:absolute;right:-2px;top:-2px;width:10px;height:10px;border-left:2px solid #111;border-bottom:2px solid #111;background:#ddd}
.retro-window{border:1px solid #111;padding:3px;background:#d4d4d4;box-shadow:5px 5px 0 #111;min-width:0}.retro-title{display:flex;align-items:center;gap:9px;background:#111;color:#fff;min-height:29px;padding:3px 5px;font-size:12px}.retro-title h1,.retro-title h2{font:700 12px 'Courier New',monospace;margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.system-box{display:grid;place-items:center;width:19px;height:18px;background:#ddd;color:#111;border:1px outset #fff;font-weight:bold}.retro-title button{height:22px;min-width:24px;border:2px outset #fff;background:#ddd;color:#111;padding:0 4px}.window-menu{display:flex;gap:20px;padding:8px 12px;border-bottom:1px solid #111;font-size:11px}.window-menu a{text-decoration:underline;text-underline-offset:3px}.window-menu a:hover{background:#111;color:#fff}
.logo-window{grid-column:2;grid-row:1/3;align-self:center;width:100%;max-width:760px;justify-self:center}.logo-window #ascii-canvas{position:relative;display:block;inset:auto;width:100%;height:clamp(320px,49vh,530px);background:#fff;opacity:1}.logo-status{display:flex;justify-content:space-between;gap:8px;padding:9px 8px;border-top:1px solid #111;background:#eee;font-size:9px;letter-spacing:.3px}
.clock-window{grid-column:3;grid-row:1}.clock-face{display:flex;align-items:center;gap:12px;padding:19px 12px 12px;background:#fff}.analog-clock{width:76px;height:76px;flex:0 0 76px}.clock-time{font-size:20px;font-weight:bold;letter-spacing:-1px;font-variant-numeric:tabular-nums;white-space:nowrap}.clock-date{font-size:10px;margin-top:6px;line-height:1.5}.clock-zone{display:block;margin-top:5px;font-size:10px}.clock-options{padding:10px 12px 13px;border-top:1px solid #aaa}.clock-options label{display:block;font-size:10px;margin-bottom:5px}.clock-options select{width:100%;min-height:36px;border:2px inset #eee;background:#fff;color:#111;font:12px 'Courier New',monospace}.clock-note{font-size:9px;margin:8px 0 0;line-height:1.5}
.bot-window{grid-column:3;grid-row:2;align-self:start}#botBody{padding:10px;background:#eee}#chatLog{height:157px;overflow:auto;background:#fff;border:2px inset #ddd;padding:10px;font-size:11px;line-height:1.7;overflow-wrap:anywhere}#chatLog p{margin:0 0 12px}#chatLog a{font-weight:bold;text-decoration:underline}#chatForm{display:flex;gap:5px;margin-top:9px}#chatInput{min-width:0;width:100%;background:white;border:2px inset #eee;padding:8px;font:12px 'Courier New',monospace}#chatForm button{background:#ddd;border:2px outset #fff;font-size:11px;white-space:nowrap;min-height:38px}.bot-note{display:block;margin-top:9px;font-size:9px;line-height:1.5;color:#444}.home-footer{position:absolute;bottom:auto;top:calc(100dvh - 60px);left:38px;right:38px;font-size:10px;border-top:1px solid #111;padding-top:7px}.home-footer>span{padding:6px 0}#motionToggle{font-size:11px;border:1px solid #111;min-height:34px;padding:6px 12px}.desktop-build{color:#666}.desktop-build a{text-decoration:underline}.menu-panel{font-family:'Courier New',monospace}.nav-item{font-size:28px;padding:16px 0}.nav-separate{margin:0}
@media(min-width:1500px){.desktop{gap:40px;padding-top:165px}.logo-window #ascii-canvas{height:550px}}
@media(max-width:1050px){.desktop{grid-template-columns:100px minmax(250px,1fr) 254px;gap:20px;padding-left:24px;padding-right:24px}.desktop-files>a{width:100px}.clock-time{font-size:17px}.analog-clock{width:62px;height:62px;flex-basis:62px}.logo-status{font-size:8px}}
@media(max-width:780px){.desktop{display:grid;grid-template-columns:1fr 1fr;padding:130px 18px 35px;gap:22px;min-height:0}.desktop-bar{font-size:9px;padding:9px 12px;letter-spacing:0}.desktop-bar span:last-child{display:none}.site-header{top:44px;left:16px;right:16px}.desktop-files{grid-column:1/-1;grid-row:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:0}.desktop-files>a{width:calc(20% - 7px);min-width:58px;font-size:10px;padding:4px 0}.desktop-files small{display:none}.file-icon{width:33px;height:40px;font-size:15px}.logo-window{grid-column:1/-1;grid-row:auto;max-width:600px}.logo-window #ascii-canvas{height:clamp(300px,80vw,460px)}.logo-status{font-size:8px}.clock-window,.bot-window{grid-column:auto;grid-row:auto;align-self:start}.clock-face{justify-content:center}.analog-clock{display:none}.home-footer{position:static;margin:0 18px 20px;font-size:9px}.desktop-build{display:none}.clock-time{font-size:22px}}
@media(max-width:480px){.desktop{grid-template-columns:1fr}.clock-window,.bot-window{grid-column:1}.clock-face{justify-content:flex-start;gap:24px;padding:16px}.analog-clock{display:block;width:70px;height:70px;flex-basis:70px}.clock-time{font-size:27px}.logo-status>span:first-child{max-width:65%}#chatLog{height:140px}}
[hidden]{display:none!important}
/* Keep the footer below all desktop files on shorter laptop screens. */
@media(min-width:781px){.desktop{min-height:calc(100dvh - 75px);padding-bottom:45px}.home-footer{position:static;margin:0 38px 20px}}


/* Six desktop shortcuts, including the year-long public challenge. */
.calendar-icon{font-size:17px}.desktop-files .challenge-shortcut{line-height:1.35}.desktop-files{gap:16px}.desktop-files .challenge-shortcut .calendar-icon{border-top:9px solid #111}.desktop-files .challenge-shortcut .calendar-icon:after{display:none}
@media(max-width:780px){.desktop-files>a{width:calc(33.333% - 8px);min-width:80px;max-width:160px;font-size:12px;padding:6px 2px}.desktop-files{gap:12px 8px}.calendar-icon{font-size:14px}.nav-item{font-size:clamp(19px,5.2vw,28px)}}
