:root{font-family:"Segoe UI",Arial,sans-serif;color:#202e35;background:#0a2330;font-synthesis:none;--ink:#192b35;--muted:#51636c;--mint:#a9efd6;--line:#dbe4e6;--bar:60px;--accent:#176651;--paper:#f9fbfb}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #168366;outline-offset:3px}a{color:#176651;text-underline-offset:4px}button{color:inherit}button svg{pointer-events:none}svg{width:24px;height:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip-link{position:fixed;top:-80px;left:20px;z-index:10000;background:white;padding:12px}.skip-link:focus{top:12px}#desktop{height:calc(100dvh - var(--bar));min-height:480px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 84% 104%,#247e7499,transparent 49%),radial-gradient(ellipse at 39% -20%,#30565d80,transparent 55%),linear-gradient(125deg,#0c1f31 12%,#103441 58%,#16473f)}#desktop:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 52%,#ffffff03 52%,#ffffff03 72%,transparent 72%)}.desktop-topline{position:absolute;top:28px;left:32px;right:34px;display:flex;align-items:center;justify-content:space-between;color:#dcecea}.monogram{font-size:22px;font-weight:700;letter-spacing:-1px;display:flex;align-items:center;gap:12px}.tiny-squares{font-size:22px;color:#80b7aa;font-weight:400}.preview-label{font:12px "Consolas",monospace;letter-spacing:1.8px;color:#b3cbc8}.preview-label span{padding:0 12px;color:#6b928d}.desktop-icons{position:absolute;top:102px;left:20px;display:grid;grid-template-rows:repeat(5,100px);grid-auto-flow:column;gap:11px 10px;z-index:1}.desktop-icon{width:100px;min-height:100px;border:1px solid transparent;background:none;display:flex;flex-direction:column;gap:9px;align-items:center;justify-content:center;color:#f0f7f6;border-radius:7px;font-size:14px;font-weight:500;line-height:1.15;text-shadow:0 1px 4px #0008}.desktop-icon:hover,.desktop-icon:focus-visible{background:#c4edec18;border-color:#d2f0ec33}.icon-tile{height:49px;width:49px;border-radius:11px;display:grid;place-items:center;box-shadow:0 5px 12px #00102022,inset 0 1px 0 #ffffff88;color:#184c5b;background:#c8e6ec;position:relative}.icon-tile svg{width:28px;height:28px}.icon-tile.resume,.icon-tile.education{background:#e5e9dc;color:#596343}.icon-tile.experience,.icon-tile.portfolio{background:#f6d5a0;color:#755422}.icon-tile.archive{background:#bfd0dd;color:#3d5267}.icon-tile.contact{background:#bde9d6;color:#205f4b}.icon-tile.duskwood{background:#d4cef1;color:#534879}.icon-tile.permissions{background:#233f4b;color:#b6f1d8;box-shadow:inset 0 0 0 1px #ffffff30,0 5px 12px #00102033}.shortcut{position:absolute;bottom:-2px;left:-3px;border-radius:2px;background:#e4f0ee;color:#315f61;font:13px Arial;width:14px;height:14px;text-shadow:none;display:grid;place-items:center}.wallpaper-type{position:absolute;right:6.8%;top:25%;width:49%;color:#deeeeb;pointer-events:none}.wallpaper-type>span{font:12px Consolas,monospace;letter-spacing:4px;color:#8bb4ac}.wallpaper-type strong{display:block;font-size:clamp(48px,5.7vw,90px);line-height:1.02;letter-spacing:-4px;font-weight:500;margin-top:24px}.period{color:#9fe7c9}.wallpaper-type p{color:#9dbeb5;font-size:18px;margin-top:30px;letter-spacing:.2px}.desktop-note{position:absolute;right:7%;bottom:40px;color:#b6d2cb;font-size:13px;display:flex;flex-direction:column;gap:9px}.note-line{height:1px;background:#7cb7a566;width:40px;margin-bottom:8px}.note-short{color:#8cafaa;font-size:12px}.taskbar{height:var(--bar);background:#e8f1efeF;border-top:1px solid #d8e8e688;display:flex;align-items:center;gap:12px;padding:8px 16px;position:fixed;bottom:0;left:0;right:0;z-index:5000;backdrop-filter:blur(18px)}.start-button{display:flex;align-items:center;gap:10px;background:transparent;border:0;border-radius:5px;padding:10px 12px;font-weight:600;font-size:14px}.start-button:hover,.start-button[aria-expanded=true]{background:#d0e0db}.windows-mark{display:grid;grid-template-columns:9px 9px;grid-template-rows:9px 9px;gap:3px}.windows-mark i{background:#226d5f}.task-separator{height:27px;border-left:1px solid #b7ccc5}#task-buttons{display:flex;gap:6px;flex:1;min-width:0;overflow-x:auto}.task-button{border:1px solid transparent;border-radius:5px;background:#ffffff66;min-width:45px;height:42px;max-width:180px;display:flex;gap:9px;align-items:center;justify-content:center;padding:0 12px;position:relative;white-space:nowrap;font-size:13px}.task-button::after{content:"";position:absolute;bottom:0;height:3px;width:14px;background:#9dada8;border-radius:2px}.task-button.active{background:#fff;border-color:#c6d9d2}.task-button.active:after{width:26px;background:#226d5f}.task-button:hover{background:white}.task-button svg{width:20px;height:20px}.system-tray{display:flex;align-items:center;gap:22px;font-size:12px;color:#456158;margin-left:auto}.local-tag{font:11px Consolas,monospace;letter-spacing:1px}#clock{text-align:right;white-space:pre-line;line-height:1.5}#show-desktop{height:38px;width:8px;border:0;border-left:1px solid #b9d2c8;background:none;margin-left:4px;padding:0}#start-menu{position:fixed;left:16px;bottom:70px;width:350px;border:1px solid #c6d8d2;border-radius:10px;background:#f5faf8;box-shadow:0 16px 60px #0005;z-index:5100;padding:20px}#start-menu header{display:flex;align-items:center;gap:12px;border-bottom:1px solid #d8e5df;padding-bottom:18px}.avatar{display:grid;place-items:center;border-radius:50%;width:43px;height:43px;background:#d2e9dd;color:#275a46;font-weight:600}#start-menu strong{font-size:16px}#start-menu header span:not(.avatar){display:block;font-size:12px;margin-top:5px;color:#607369}#start-apps{padding:14px 0;display:grid;grid-template-columns:1fr 1fr;gap:5px}#start-apps button{display:flex;align-items:center;gap:10px;border:0;border-radius:5px;padding:11px 8px;text-align:left;background:none;font-size:14px}#start-apps button:hover{background:#dcece4}#start-menu footer{font-size:12px;color:#687a70;border-top:1px solid #d8e5df;padding-top:15px}.window{position:absolute;width:760px;max-width:calc(100% - 32px);height:570px;max-height:calc(100% - 28px);display:flex;flex-direction:column;overflow:hidden;background:var(--paper);border:1px solid #acc4bf;border-radius:9px;box-shadow:0 24px 70px #03101866,0 3px 9px #0002;opacity:.97}.window.active{opacity:1;border-color:#daeae5;box-shadow:0 30px 85px #00111b80,0 4px 12px #0003}.titlebar{height:45px;flex:0 0 45px;background:#e4eeea;display:flex;align-items:center;justify-content:space-between;user-select:none;touch-action:none;color:#4a5f57}.active .titlebar{background:#eef5f1;color:#1c3e32}.title-caption{padding:0 15px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600;overflow:hidden;white-space:nowrap}.title-caption svg{width:17px;height:17px}.window-controls{display:flex;align-self:stretch}.window-controls button{border:0;background:none;width:44px;display:grid;place-items:center;border-radius:0}.window-controls button:hover{background:#d6e5dd}.window-controls button:last-child:hover{background:#c44343;color:white}.window-controls svg{width:16px;height:16px}.window-content{overflow:auto;flex:1;min-height:0;overscroll-behavior:contain;scrollbar-color:#b9ccc4 transparent;scrollbar-width:thin}.window-status{height:28px;flex:0 0 28px;border-top:1px solid #dce7e2;background:#f0f5f2;padding:0 16px;display:flex;justify-content:space-between;align-items:center;font:11px Consolas,monospace;color:#60746a}.window.maximized{left:8px!important;top:8px!important;width:calc(100% - 16px)!important;height:calc(100% - 16px)!important;max-width:none;max-height:none}.page{padding:35px 40px 38px}.eyebrow{font:11px Consolas,monospace;letter-spacing:1.8px;color:#587166;text-transform:uppercase;margin:0 0 14px}.page h1{font-size:34px;font-weight:600;line-height:1.15;letter-spacing:-1.2px;margin:0 0 18px}.page h2{font-size:19px;letter-spacing:-.3px;margin:27px 0 13px}.page h3{font-size:17px;margin:0 0 8px}.page p{font-size:16px;line-height:1.7;color:#4b5f62;margin:0 0 19px}.page .lead{font-size:18px;line-height:1.6;max-width:550px}.tag{font-size:12px;padding:5px 8px;border:1px solid #d8e5de;border-radius:4px;background:#eff5f1;color:#406052}.action-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 16px;border:1px solid #c5d8ce;border-radius:5px;background:#fff;color:#27503f;font-size:14px;line-height:1.4;text-decoration:none;font-weight:600}.button.primary{background:#23664f;border-color:#23664f;color:white}.button:hover{filter:brightness(.96)}.button svg{width:17px;height:17px}.badge{display:inline-block;border:1px solid #cfe2d6;border-radius:3px;color:#416853;font:10px Consolas,monospace;letter-spacing:.7px;padding:4px 7px;margin-bottom:8px}.demo-frame{border:0;width:100%;height:100%;background:#fff}.frame-layout{height:100%;display:flex;flex-direction:column}.frame-layout iframe{min-height:320px;flex:1}.noscript{position:relative;margin:100px auto;padding:30px;background:white;width:min(90%,700px);z-index:2}
@media(min-width:1450px){.desktop-icons{grid-template-rows:repeat(5,108px);gap:15px 20px}.window{width:810px;height:610px}.page{padding:40px 45px}.page h1{font-size:38px}}
@media(max-width:900px){.wallpaper-type{top:22%;right:5%;width:52%}.wallpaper-type strong{letter-spacing:-2px;font-size:55px}.task-button span{display:none}.system-tray{gap:10px}.desktop-note{max-width:230px;font-size:12px}.window{width:700px}}
@media(max-width:600px){:root{--bar:58px}#desktop{min-height:unset}.desktop-topline{top:20px;left:20px;right:20px}.preview-label{font-size:10px;letter-spacing:1px}.preview-label span{padding:0 4px}.desktop-icons{top:83px;left:10px;right:10px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;grid-auto-flow:row;gap:14px 2px}.desktop-icon{width:100%;height:94px;font-size:12px;min-height:unset}.icon-tile{width:45px;height:45px}.wallpaper-type{top:auto;bottom:38px;left:28px;right:20px;width:auto}.wallpaper-type>span{font-size:10px;letter-spacing:2px}.wallpaper-type strong{font-size:43px;letter-spacing:-2px;margin-top:13px}.wallpaper-type p{font-size:14px;margin-top:18px}.desktop-note{display:none}.window{left:7px!important;top:7px!important;width:calc(100% - 14px)!important;height:calc(100% - 14px)!important;max-width:none;max-height:none}.window.maximized{left:7px!important;top:7px!important;width:calc(100% - 14px)!important;height:calc(100% - 14px)!important}.window-controls button{width:40px}.title-caption{padding-left:11px;font-size:12px}.page{padding:26px 23px 30px}.page h1{font-size:30px}.page .lead{font-size:17px}.taskbar{padding:8px;gap:7px}.start-button{padding:9px 7px}.start-button>span:last-child{display:none}.task-separator{display:none}.task-button{padding:0 8px;min-width:36px;height:40px}.task-button svg{width:18px}.local-tag{display:none}.system-tray{font-size:11px;margin-left:2px}#task-buttons{gap:3px}#show-desktop{margin-left:0}.window-status{font-size:10px;padding:0 11px}#start-menu{width:calc(100% - 24px);left:12px;bottom:68px}}
@media(max-height:680px) and (min-width:601px){.desktop-icons{top:85px;grid-template-rows:repeat(4,89px);gap:6px}.desktop-icon{min-height:89px}.desktop-note{bottom:22px}}
@media(max-height:650px) and (max-width:600px){.wallpaper-type{display:none}.desktop-icons{gap:7px 2px}}
@media(prefers-reduced-motion:no-preference){.window{animation:window-in .16s ease-out}@keyframes window-in{from{transform:translateY(8px);opacity:.7}to{transform:translateY(0);opacity:1}}}
@media print{body{background:white}.taskbar,.desktop-topline,.desktop-icons,.wallpaper-type,.desktop-note,#start-menu,.titlebar,.window-status{display:none!important}#desktop{height:auto;background:white;overflow:visible}.window{display:none!important}.window.active{display:block!important;position:static;width:auto;height:auto;max-height:none;max-width:none;border:0;box-shadow:none}.window-content{overflow:visible}.page{padding:0}}.file-list{margin-top:26px;border-top:1px solid var(--line)}.file-list>button,.file-list>a{background:none;border:0;border-bottom:1px solid var(--line);padding:22px 8px;display:flex;align-items:center;gap:20px;width:100%;text-align:left;text-decoration:none;color:var(--ink)}.file-list>button:hover,.file-list>a:hover{background:#edf4ef}.file-list strong,.file-list small{display:block}.file-list strong{font-size:17px;font-weight:600}.file-list small{font-size:13px;color:var(--muted);margin-top:8px}.file-list .icon-tile{box-shadow:none;flex-shrink:0}.file-list>button>svg{margin-left:auto}.window-content:focus{outline:none}

@media(min-width:601px) and (min-height:760px){.window{height:640px}}

/* Demo / clip layouts */
.frame-layout{display:flex;flex-direction:column;height:100%;min-height:0}
.demo-frame{flex:1;width:100%;border:0;min-height:420px;background:#0b0d12}

/* Project galleries */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem;margin-top:1rem}
.gallery-grid figure{margin:0;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}
.gallery-grid img,.gallery-grid video{display:block;width:100%;height:160px;object-fit:cover;background:#000}
.gallery-grid figcaption{padding:.45rem .65rem;font-size:.75rem;opacity:.8;line-height:1.35}
.icon-tile.hermes,.icon-tile.concept,.icon-tile.aether{background:linear-gradient(145deg,#1a3a44,#0f2a32)}

/* Folder desktop: five collections, with the existing window manager. */
.desktop-icons{top:115px;left:32px;bottom:100px;display:flex;flex-direction:column;gap:10px;overflow:auto;width:250px;padding:6px}
.desktop-icon{flex:0 0 auto;width:100%;min-height:78px;padding:12px;flex-direction:row;justify-content:flex-start;gap:18px;text-align:left;border-radius:12px}
.desktop-icon-copy{display:flex;flex-direction:column;gap:7px}
.desktop-icon-copy strong{font-size:15px;font-weight:500;line-height:1.3}
.desktop-icon-copy small{font:10px Consolas,monospace;color:#9fc3bc;letter-spacing:1px;text-transform:uppercase}
.wallpaper-type{right:7%;top:25%;width:52%;max-width:750px}
.wallpaper-type strong{font-size:clamp(42px,5.4vw,86px)}
.window-path{flex:0 0 auto;display:flex;align-items:center;gap:9px;min-height:38px;padding:7px 16px;border-bottom:1px solid var(--line);background:#f0f5f2;font-size:12px;color:#61756a;overflow:auto;white-space:nowrap}
.window-path button{border:0;background:none;color:#27614c;padding:4px 2px;font-size:12px}
.window-path button:hover{text-decoration:underline;text-underline-offset:3px}
.window-path [aria-current]{overflow:hidden;text-overflow:ellipsis;min-width:45px}
.folder-list{border-top:1px solid var(--line)}
.folder-item{display:flex;align-items:center;gap:19px;width:100%;padding:18px 4px;background:none;border:0;border-bottom:1px solid var(--line);text-align:left}
.folder-item:hover{background:#edf4ef}.folder-item:focus-visible{outline-offset:-3px}
.folder-item .icon-tile{box-shadow:none;flex-shrink:0;width:44px;height:44px}
.folder-item-copy{display:flex;flex:1;min-width:0;flex-direction:column;gap:6px}
.folder-item-copy .item-kind{font:10px Consolas,monospace;letter-spacing:.8px;text-transform:uppercase;color:#5b7569}
.folder-item-copy strong{font-size:16px;font-weight:600;line-height:1.4}
.folder-item-copy>span{font-size:13px;line-height:1.55;color:var(--muted)}
.folder-item>svg{width:18px;color:#648377}
.icon-tile.hermes,.icon-tile.concept,.icon-tile.aether,.icon-tile.command-art,.icon-tile.ops-notes{background:#e0e9ed;color:#335b69}
#start-apps{grid-template-columns:1fr;gap:4px;padding:12px 0}
#start-apps button{gap:14px;padding:11px;border:1px solid transparent}
#start-apps button>span{flex:1;display:flex;justify-content:space-between;align-items:center;gap:12px}
#start-apps small{font:10px Consolas,monospace;color:#718478}
#start-menu{max-height:calc(100dvh - 90px);overflow:auto}
.gallery-grid figure{background:#edf3f0;border:1px solid var(--line)}
.gallery-grid img{height:auto;aspect-ratio:16/10;object-fit:contain;background:#e5ece9}
.gallery-grid figcaption{opacity:1;color:#52695e;line-height:1.5;padding:10px 12px}
.frame-layout iframe{min-height:0}
@media(max-width:1100px) and (min-width:601px){.desktop-icons{left:20px;width:220px}.wallpaper-type{right:4%;width:58%}.wallpaper-type strong{font-size:clamp(36px,5.4vw,59px);letter-spacing:-2px}.wallpaper-type p{font-size:15px}}
@media(max-height:740px) and (min-width:601px){.desktop-icons{top:85px;bottom:20px;gap:4px}.desktop-icon{min-height:68px;padding:8px 12px}.desktop-note{bottom:25px}}
@media(max-width:600px){
 .desktop-icons{top:85px;left:16px;right:16px;bottom:20px;width:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:100px;align-content:start;gap:12px}
 .desktop-icon{min-height:100px;height:auto;width:100%;padding:12px 8px;flex-direction:row;gap:11px;text-align:left;background:#c4edec08;border-color:#d2f0ec12}
 .desktop-icon-copy{gap:5px}.desktop-icon-copy strong{font-size:13px}.desktop-icon-copy small{font-size:9px}
 .wallpaper-type{display:block;top:auto;bottom:30px;left:28px;right:20px;width:auto}.wallpaper-type strong{font-size:39px}.folder-item{gap:12px;padding:17px 0}.folder-item-copy strong{font-size:14px}.folder-item-copy>span{font-size:12px}.folder-item>svg{width:15px}
 .window-path{padding:5px 12px;min-height:35px}.folder-page{padding:23px 20px}
 .gallery-grid{grid-template-columns:1fr}}
@media(max-width:600px) and (max-height:770px){.wallpaper-type{display:none}}
@media(max-width:350px){.desktop-icons{gap:8px;left:10px;right:10px}.desktop-icon{gap:7px;padding:10px 6px}.desktop-icon-copy strong{font-size:12px}}
@media print{.window-path{display:none}}

/* ===== Start menu feature pack + distinctive folder tiles ===== */
.icon-tile.short-stories{background:#e8e0d0;color:#5c4a2d}

.icon-tile.power{background:#e4d4d4;color:#6e3030}
.icon-tile.programs{background:#d5e0e8;color:#345066}
.desktop-icon-app .desktop-icon-copy small{letter-spacing:.2px}

#start-menu{width:min(380px,calc(100vw - 24px));padding:18px 18px 14px}
#start-apps{display:flex;flex-direction:column;gap:4px;padding:12px 0}
#start-apps > .start-cascade-btn,
#start-apps .start-quick button,
#start-programs button,
#start-power button{
  display:flex;align-items:center;gap:12px;width:100%;border:1px solid transparent;border-radius:5px;
  padding:10px 8px;text-align:left;background:none;font-size:14px
}
#start-apps > .start-cascade-btn:hover,
#start-apps .start-quick button:hover,
#start-programs button:hover,
#start-power button:hover{background:#dcece4;border-color:#c5d9cf}
#start-apps > .start-cascade-btn{font-weight:600}
#start-apps > .start-cascade-btn .cascade-chevron{margin-left:auto;color:#6a8578;font-size:14px}
#start-apps span{flex:1;display:flex;justify-content:space-between;align-items:center;gap:10px;min-width:0}
#start-apps small,
#start-programs small,
#start-power small{font:10px Consolas,monospace;color:#718478;flex-shrink:0}
.start-cascade{
  margin:0 0 6px 12px;padding:4px 0 4px 8px;border-left:2px solid #c5d9cf;
  display:flex;flex-direction:column;gap:2px
}
.start-cascade[hidden]{display:none!important}
.start-quick{display:flex;flex-direction:column;gap:2px;margin-top:8px;padding-top:10px;border-top:1px solid #d8e5df}

/* Photos */

/* Short stories */

/* Rain overlay — gradual, calm; NO lightning, strobes, opacity blinks, or audio */
.rain-overlay{
  position:fixed;inset:0;z-index:9000;pointer-events:none;
  display:grid;place-items:center;opacity:0;transition:opacity 1.8s ease
}
.rain-overlay.rain-active{opacity:1}
.rain-overlay.rain-fade-out{opacity:0;transition:opacity 2.2s ease}
.rain-veil{
  position:absolute;inset:0;
  background:linear-gradient(180deg,#0a1a24cc,#0c2430e6);
  /* steady veil — no animation */
}
.rain-layer{position:absolute;inset:0;overflow:hidden}
.rain-drop{
  position:absolute;top:-40px;width:1.5px;
  background:linear-gradient(180deg,transparent,#b8d4e8aa);
  border-radius:1px;
  animation-name:rain-fall;
  animation-timing-function:linear;
  animation-iteration-count:infinite;
  /* opacity set inline once — never toggled */
}
@keyframes rain-fall{
  0%{transform:translateY(0)}
  100%{transform:translateY(110vh)}
}
@media(prefers-reduced-motion:reduce){
  .rain-drop{animation:none;display:none}}
.rain-label{
  position:relative;z-index:1;margin:0;padding:14px 22px;
  font:14px Consolas,monospace;letter-spacing:1px;color:#d7ebe6;
  background:#0c2430aa;border:1px solid #5a8a7e66;border-radius:6px
}
@media(max-width:600px){
  .start-cascade{margin-left:6px}}
@media print{
  .rain-overlay,#start-menu{display:none!important}}

/* ===== contrast pass 20260925: photos/stories/folder/resume/start chrome ===== */
/* Content pages — same dark readable treatment as the other windows (scoped; layout preserved) */
.folder-page{
  background:linear-gradient(180deg,#1b2838 0%,#171d25 160px);color:#c7d5e0
}
.folder-page .eyebrow,.folder-page p,.folder-page .lead{color:#c7d5e0}
.folder-page h1,.folder-page h2{color:#fff}
.folder-page .folder-item-copy .item-kind{color:#b8c7d2}
.folder-page .folder-item-copy>span{color:#b8c7d2}
.folder-page .folder-item>svg{color:#8bb8d4}
.folder-page .folder-list,.folder-page .folder-item{border-color:#2a475e}
.folder-page .folder-item:hover{background:#1b2838}

/* Resume / iframe chrome — dark readable toolbar */
.frame-layout{background:#171d25;color:#c7d5e0}

/* Window chrome + Start menu — keep mint Explorer look, darken ink for AA */
.titlebar{color:#24352f}
.active .titlebar{color:#0f1a16}
.window-status{color:#2a3a34}
.window-path{color:#2a3a34;background:#e8f0ec}
#start-menu{color:#192b35}
#start-menu header span:not(.avatar){color:#2a3a34}
#start-menu footer{color:#2a3a34}
#start-apps small,
#start-programs small,
#start-power small{color:#3a4a52}
#start-apps > .start-cascade-btn .cascade-chevron{color:#3a4a52}

/* September 2026: direct project access and two personal game collections. */
.desktop-icons{width:430px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(6,72px);grid-auto-flow:row;gap:7px;top:100px;bottom:38px;align-content:start}
.desktop-icon{min-height:72px;padding:10px 7px;gap:12px;min-width:0}.desktop-icon .icon-tile{width:42px;height:42px;flex-shrink:0;border-radius:9px}.desktop-icon .icon-tile svg{width:24px;height:24px}.desktop-icon-copy strong{font-size:14px}.desktop-icon-copy small{font-size:9px;letter-spacing:.3px}.icon-tile.blender-agents{background:#f6ceb1;color:#793f18}.icon-tile.rytmik-agents{background:#d5cef7;color:#4c3d83}.icon-tile.hermes{color:#a9efd6}.desktop-icon .icon-tile.about-folder{background:#b5dac4;color:#356b53}
#start-menu{max-height:calc(100dvh - 90px);overflow:auto}#start-programs{max-height:42vh;overflow:auto}#start-programs span{align-items:flex-start;flex-direction:column;gap:3px}#start-programs small{white-space:normal}
.game-collection{list-style:none;margin:0;padding:0;display:grid;gap:16px}.game-card{background:linear-gradient(120deg,#203448,#192938);border:1px solid #304a60;border-radius:5px;display:grid;grid-template-columns:36% 1fr;overflow:hidden;scroll-margin:20px}.game-art{position:relative;background:#0c1722;align-self:start}.game-art img{width:100%;height:auto;display:block;aspect-ratio:460/215;object-fit:cover}.game-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.game-meta>span{font:9px Consolas,monospace;letter-spacing:.5px;text-transform:uppercase;color:#91b8d6}.game-meta>strong{font:16px Consolas,monospace;color:#c9edff;white-space:nowrap}.game-meta small{font-size:10px;color:#91b8d6}
.beta-label{position:absolute;top:12px;right:12px;background:#121e2cef;border:1px solid #5abbec;color:#89d5ff;font:11px Consolas,monospace;padding:5px 9px;text-transform:uppercase;z-index:1}
@media(max-width:1100px){.desktop-icons{width:380px;left:18px}.desktop-icon{gap:10px}.desktop-icon-copy strong{font-size:12px}.desktop-icon-copy small{font-size:8px}.wallpaper-type{width:45%;right:5%}.wallpaper-type strong{font-size:clamp(38px,5vw,70px)}}
@media(max-width:700px){.game-card{grid-template-columns:1fr}.game-art{max-width:none}.game-art img{max-height:230px;object-fit:cover}}
@media(max-width:600px){.desktop-icons{top:135px;left:14px;right:14px;width:auto;bottom:25px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:66px;gap:6px;padding:0}.desktop-icon{padding:8px 6px;min-height:66px;gap:9px;flex-direction:row;text-align:left}.desktop-icon .icon-tile{width:34px;height:36px}.desktop-icon-copy strong{font-size:12px}.desktop-icon-copy small{font-size:8px;letter-spacing:0}.wallpaper-type{top:70px;left:22px;right:22px;width:auto}.wallpaper-type>span,.wallpaper-type p{display:none}.wallpaper-type strong{font-size:24px;line-height:1;letter-spacing:-1px;margin:0}.wallpaper-type strong br{display:none}.desktop-note{display:none}.game-meta>span{font-size:9px}.game-meta>strong{font-size:15px}}

/* Keep official cover artwork fully visible at every window size. */
.icon-tile.hermes{background:#183c45!important;color:#a9efd6}

/* Blender asset exhibition: one viewer, canonical images, and a contact sheet. */
@media screen and (min-width:601px){#window-blender-agents{width:min(1360px,calc(100% - 40px));height:calc(100% - 40px);max-width:none;max-height:none}}

/* Direct launch index; demo content and media remain at their canonical locations. */

/* Top Secret: a floppy-disk game collection, with canonical standalone game files. */.icon-tile.pocket-dragon{background:#bdd6b3;color:#39624e}.icon-tile.lantern-gate{background:#ebc584;color:#5d4930}

/* Give the large game windows room to browse while keeping desktop controls in view. */
@media screen and (min-width:601px){
 #window-pocket-dragon,#window-lantern-gate{width:min(1280px,calc(100% - 40px));height:calc(100% - 40px);max-width:none;max-height:none}}
#window-pocket-dragon .window-content,#window-lantern-gate .window-content{overflow:hidden;display:flex;flex-direction:column}
#window-pocket-dragon .frame-layout,#window-lantern-gate .frame-layout{flex:1;min-height:0;height:100%;display:flex;flex-direction:column}
#window-pocket-dragon .demo-frame,#window-lantern-gate .demo-frame{min-height:0}
/* Top Secret: a physical game disk with one canonical Ultima VII cover label. */

/* Three canonical Rytmik exports, with a separate accessible player for each. */

/* Restored Aetherglass hub: direct scene access, wide on desktop. */
.icon-tile.aetherglass{background:#173e50;color:#a7ecf2;border:1px solid #648b92}
@media(min-width:601px){#window-aetherglass{width:min(1440px,calc(100% - 40px));height:calc(100% - 40px);max-width:none;max-height:none}}
#window-aetherglass .window-content{overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;overscroll-behavior:contain}#window-aetherglass .demo-frame{min-height:0}

/* Photos: a living contact print, reusing the gallery's original files. */

/* Original title art is the focal point. Keep the accessible name in native text. */

/* Borrowed Names is a native framed game, sharing existing concept asset URLs. */
.icon-tile.borrowed-names{background:#cab894;color:#342f30}
#window-borrowed-names .window-content{overflow:hidden;display:flex;flex-direction:column}
#window-borrowed-names .frame-layout{flex:1;min-height:0;height:100%;display:flex;flex-direction:column}
#window-borrowed-names .demo-frame{min-height:0}
@media(min-width:601px){#window-borrowed-names{width:min(1280px,calc(100% - 40px));height:calc(100% - 40px);max-width:none;max-height:none}}

/* Spacious long story window. */
#window-short-stories{width:min(1230px,calc(100vw - 40px));height:min(950px,calc(100dvh - 105px))}
#window-pocket-dragon,#window-moorland-hikers{width:min(1100px,calc(100vw - 40px));height:min(950px,calc(100dvh - 105px))}
#window-short-stories .window-content,#window-pocket-dragon .window-content,#window-moorland-hikers .window-content{padding:0;overflow:hidden;display:flex;min-height:0}
#window-pocket-dragon .frame-layout,#window-moorland-hikers .frame-layout{flex:1;min-height:0;display:flex;flex-direction:column}
#window-pocket-dragon .demo-frame,#window-moorland-hikers .demo-frame{flex:1;min-height:0;width:100%;height:100%;border:0}
#window-thirteenth-lantern{width:min(1100px,calc(100vw - 40px));height:min(950px,calc(100dvh - 105px))}
#window-thirteenth-lantern .window-content{padding:0;overflow:hidden;display:flex;min-height:0}
#window-thirteenth-lantern .frame-layout{flex:1;min-height:0;display:flex;flex-direction:column}
#window-thirteenth-lantern .demo-frame{flex:1;min-height:0;width:100%;height:100%;border:0}
#window-short-stories .story-library-frame{flex:1;min-height:0;display:flex;flex-direction:column}
#window-short-stories .demo-frame{flex:1;min-height:0;width:100%;height:100%;border:0}
#window-short-stories.maximized,#window-pocket-dragon.maximized,#window-moorland-hikers.maximized,#window-thirteenth-lantern.maximized{width:auto;height:auto}
/* Fixed-height artwork prevents lazy images from moving a selected card. */
@media(max-width:600px){#window-short-stories,#window-pocket-dragon,#window-moorland-hikers,#window-thirteenth-lantern{width:100%;height:calc(100dvh - 90px)}}
@media(max-height:500px){#window-short-stories,#window-thirteenth-lantern,#window-moorland-hikers{height:calc(100dvh - 70px)}#window-short-stories .window-path,#window-thirteenth-lantern .window-path,#window-moorland-hikers .window-path{display:none}#window-short-stories .titlebar,#window-thirteenth-lantern .titlebar,#window-moorland-hikers .titlebar{height:35px;min-height:35px}#window-short-stories .window-status,#window-thirteenth-lantern .window-status,#window-moorland-hikers .window-status{height:22px;padding:4px 14px}}

@media(max-height:760px){#window-pocket-dragon .window-path{display:none}#window-pocket-dragon .titlebar{height:35px;min-height:35px}#window-pocket-dragon .window-status{height:22px;padding:4px 14px}}
@media(max-width:600px){#window-pocket-dragon .window-path{display:none}#window-pocket-dragon .titlebar{height:35px;min-height:35px}#window-pocket-dragon .window-status{height:22px;padding:4px 14px}}
.task-button{overflow:hidden;flex-shrink:1}.task-button>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Duskwood project page only. Existing assets and window geometry are retained. */
#window-duskwood{
 --paper:#10191f;--ink:#d8e3df;--muted:#a7bcb5;--line:#34453f;--accent:#edc283;
 color-scheme:dark;background:var(--paper);color:var(--ink);border-color:#647568;
}
#window-duskwood .window-content{
 background:radial-gradient(ellipse at 92% 0%,#46574a32,transparent 52%),linear-gradient(155deg,#14221f,#10191f 55%,#10171f);
 color:#d8e3df;scrollbar-color:#617267 #15201f;
}
#window-duskwood .titlebar,#window-duskwood.active .titlebar{
 background:linear-gradient(#28372e,#202c28);color:#e5eade;border-bottom:1px solid #4b5b49;
}
#window-duskwood .title-caption svg{color:#d4b17a}
#window-duskwood .window-controls button:hover{background:#425243;color:#f3eee0}
#window-duskwood .window-controls button:last-child:hover{background:#78433e;color:#fff4e7}
#window-duskwood .window-status{
 background:#17221e;color:#a7bcb5;border-color:#34453f;
}
#window-duskwood .window-path{
 background:#1b2923;color:#b4c4b8;border-color:#34453f;
}
#window-duskwood .window-path a,#window-duskwood .window-path button{color:#e1c290}
#window-duskwood .window-path [aria-current=page]{color:#d8e3df}
#window-duskwood :is(a,button,input,select):focus-visible{
 outline:3px solid #f4d297;outline-offset:3px;
}

/* Desktop Start and menus: soft light, fixed geometry, visible mobile label. */
#start-button{
 position:relative;isolation:isolate;flex:none;min-height:44px;min-width:102px;padding:9px 14px;gap:10px;
 color:#f2fff7;background:linear-gradient(145deg,#315f54,#1d493e);border:1px solid #618778;
 border-radius:10px;font-size:14px;font-weight:650;letter-spacing:.15px;
 box-shadow:inset 0 1px 0 #cbeada50,0 2px 4px #14352a20;transition:background .2s,border-color .2s;
}
#start-button:hover,#start-button[aria-expanded=true]{background:linear-gradient(145deg,#3b705f,#245447);border-color:#88ad98}
#start-button .windows-mark{gap:3px;grid-template-columns:9px 9px;grid-template-rows:9px 9px}
#start-button .windows-mark i{background:linear-gradient(#ddf7e6,#a6d5ba);box-shadow:inset 0 1px #ffffff88;border-radius:1px}
#start-button>span:last-child{display:inline;white-space:nowrap}
#start-button:focus-visible{outline:3px solid #437e68;outline-offset:3px}
#start-menu{border-color:#b2cabe;background:linear-gradient(150deg,#f7fbf8,#edf5ef);max-height:calc(100dvh - 84px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
#start-menu button{position:relative;isolation:isolate;min-height:44px}
#start-menu .start-cascade{position:relative;isolation:isolate;border-radius:8px;background:#e6f0e680;border-left-color:#a5c6b1}
#start-menu .start-cascade-btn[aria-expanded=true]{background:#e3eee5;border-color:#b4cfbd}
#start-apps>.start-cascade-btn>.cascade-chevron{flex:0 0 auto;display:block;width:16px;min-width:16px;margin-left:0;align-self:center;text-align:right;line-height:1}
#start-menu .start-power-divider{height:1px;flex:none;margin:8px 3px 4px;background:#cbdccf}
#start-apps>.start-power-toggle{background:#e8efe9;border-color:#c8d8cb;color:#364f40}
#start-apps>.start-power-toggle>svg{color:#6d5141}
#start-menu .start-quick{margin-top:4px;padding-top:8px}
#start-menu footer{font-size:11px;line-height:1.55;padding-top:10px}
:is(.desktop-icon,.task-button,.window button,#power-scene button,#show-desktop){isolation:isolate}
.desktop-icon,.task-button,.window button,#power-scene button,#show-desktop{position:relative}
:is(#start-button,#start-menu button,.desktop-icon,.task-button,.window button,#power-scene button,#show-desktop):not(:disabled):not([aria-disabled=true])::before,
#start-menu .start-cascade:not([hidden])::before{
 content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;
 box-shadow:0 0 0 1px #579e7629,0 0 11px 2px #458c6829;opacity:.08;
}
#power-scene button::before{box-shadow:0 0 0 1px #dfc98d29,0 0 11px 2px #dfc98d29}
:is(#start-button,#start-menu button,.desktop-icon,.task-button,.window button,#power-scene button,#show-desktop):not(:disabled):not([aria-disabled=true])::before,
#start-menu .start-cascade:not([hidden])::before{
 animation:desktop-control-breathe 7.5s ease-in-out infinite;
}
@keyframes desktop-control-breathe{0%,100%{opacity:.08}50%{opacity:.32}}
@media (max-width:600px){
 #start-button{min-width:92px;min-height:44px;padding:8px 10px;gap:8px;font-size:13px}
 #start-button>span:last-child{display:inline}
 #start-menu button{min-height:44px}
 #start-apps>.start-cascade-btn>span:not(.cascade-chevron){align-items:flex-start;flex-direction:column;gap:3px}
 #start-menu .start-power-toggle small{font-size:9px;white-space:normal}}
@media (prefers-reduced-motion:reduce){
 :is(#start-button,#start-menu button,.desktop-icon,.task-button,.window button,#power-scene button,#show-desktop)::before,
 #start-menu .start-cascade::before{animation:none!important;opacity:.08}
 #start-button{transition:none}}
@media print{
 :is(#start-button,#start-menu button,.desktop-icon,.task-button,.window button,#power-scene button,#show-desktop)::before,
 #start-menu .start-cascade::before{content:none}}

/* PC candidate: one window header, compact collections, complete image views. */
#windows .window .titlebar{height:42px;min-height:42px;gap:8px;padding-right:0;flex:0 0 auto}
.window .title-caption{display:flex;gap:9px;padding:0 0 0 12px;min-width:0;flex:1;overflow:hidden}
.window .title-caption>svg{flex:0 0 20px;width:20px;height:20px}
#windows .window .titlebar .window-path{display:flex;flex:1;min-width:0;min-height:0;height:auto;margin:0;padding:0;gap:7px;background:none;border:0;overflow:hidden;font-size:12px;color:inherit}
.window .titlebar .window-path button{flex:none;color:inherit;font-size:12px;padding:6px 2px;white-space:nowrap}
.window .titlebar .window-path [aria-current]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;color:inherit;font-weight:600}
.window .titlebar .window-path>span[aria-hidden]{opacity:.5;flex:none}
.window .window-controls{flex:none;align-self:stretch;display:flex}
.window .window-controls :is(button,a){display:grid;place-items:center;width:38px;height:100%;padding:0;border:0;background:none;color:inherit;text-decoration:none;border-radius:0}
.window .window-controls a:hover{background:#d4e6dd}
.window .window-controls a svg{width:17px;height:17px;transform:rotate(-45deg)}
.window .window-status{height:23px;min-height:23px;justify-content:flex-end;padding:4px 12px;font-size:10px}
.window .frame-layout{width:100%;height:100%;min-height:0;flex:1}
.window .demo-frame{min-height:0;display:block}
.window.maximized{left:12px!important;top:12px!important;width:calc(100% - 24px)!important;height:calc(100% - 24px)!important;max-width:none!important;max-height:none!important}
#window-short-stories .window-content,#window-thirteenth-lantern .window-content,#window-moorland-hikers .window-content,#window-pocket-dragon .window-content,#window-borrowed-names .window-content{display:flex;min-height:0;overflow:hidden}
.desktop-icons{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(4,72px);grid-template-areas:'projects arcade' 'stories .' '. .' '. photos';width:430px;gap:10px}
[data-desktop='portfolio']{grid-area:projects}[data-desktop='top-secret']{grid-area:arcade}[data-desktop='short-stories']{grid-area:stories}[data-desktop='photos']{grid-area:photos}
.desktop-icon .icon-tile.portfolio{background:#173e50;color:#a7ecf2;border:1px solid #648b92}
#photos-viewer-position{font:11px Consolas,monospace;color:#c7d5e0}

/* Original pixel glyphs, shared by the desktop, window header and Photos. */
.pixel-icon{display:block;width:24px;height:24px;flex:none;image-rendering:pixelated;object-fit:contain;pointer-events:none}
.desktop-icon .icon-tile:has(>.pixel-icon){width:60px;height:60px;display:grid;place-items:center;background:none;border:0;box-shadow:none;clip-path:none;overflow:visible}
.desktop-icon .icon-tile>.pixel-icon{width:58px;height:58px;filter:drop-shadow(0 3px 2px #06181955)}
.title-caption>.pixel-icon{width:22px;height:22px}.task-button>.pixel-icon{width:22px;height:22px}.folder-item .pixel-icon{width:32px;height:32px}

/* R1: compact desktop, responsive windows and touch targets. */
:root{--bar:44px}
#desktop{min-height:0}
.desktop-icons{left:18px;top:76px;bottom:12px;width:94px;display:grid;grid-template-columns:1fr;grid-template-rows:none;grid-auto-rows:minmax(76px,auto);grid-template-areas:none;align-content:start;gap:9px;overflow-y:auto;overflow-x:hidden;padding:2px 3px 8px}
.desktop-icons [data-desktop]{grid-area:auto;width:100%;height:auto;min-height:76px;padding:4px 2px;display:flex;flex-direction:column;align-items:center;gap:3px}
.desktop-icon .desktop-icon-copy{width:100%;text-align:center;min-width:0}
.desktop-icon .desktop-icon-copy strong{font-size:11px;line-height:1.25;white-space:normal}
.desktop-icon .desktop-icon-copy small{display:none}
.wallpaper-type{left:clamp(145px,20vw,300px);max-width:calc(100% - 170px)}
.taskbar{height:var(--bar);padding:2px 9px;gap:7px}
#start-button{min-height:36px;height:36px;min-width:86px;padding:4px 10px;font-size:12px;gap:7px}
.task-button{height:36px;min-height:36px;max-width:155px;font-size:11px;padding:4px 8px;gap:6px}
.taskbar .system-tray{font-size:10px;gap:7px}
#start-menu{bottom:calc(var(--bar) + 8px)}
#windows .window .titlebar{height:38px;min-height:38px;gap:6px}
.window .window-controls :is(button,a){width:36px}
.window .window-status{flex:0 0 18px;height:18px;min-height:18px;padding:2px 10px;font-size:9px}
.window.maximized{left:8px!important;top:8px!important;width:calc(100% - 16px)!important;height:calc(100% - 16px)!important}
.story-window .window-content{display:flex;min-height:0;overflow:hidden}
@media(max-width:800px){
 .wallpaper-type{left:145px;max-width:calc(100% - 166px)}
 .desktop-note{display:none}}
@media(max-width:600px){
 .desktop-icons{left:10px;top:74px;bottom:8px;width:88px;grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:none;gap:7px}
 .desktop-icons [data-desktop]{grid-area:auto;min-height:72px}
 .desktop-icon .icon-tile:has(>.pixel-icon){width:48px;height:48px}
 .desktop-icon .icon-tile>.pixel-icon{width:46px;height:46px}
 .wallpaper-type{left:112px;max-width:calc(100% - 128px)}
 .wallpaper-type strong{font-size:30px;letter-spacing:-1px}
 .preview-label{display:none}
 .window.maximized{left:4px!important;top:4px!important;width:calc(100% - 8px)!important;height:calc(100% - 8px)!important}
 .window .title-caption{padding-left:7px;gap:5px}
 .window .title-caption>svg,.window .title-caption>.pixel-icon{display:none}
 #windows .window .titlebar .window-path{font-size:11px;gap:4px}
 .window .titlebar .window-path button{font-size:11px}
 .window .window-controls :is(button,a){width:32px}
 .taskbar{padding:2px 6px;gap:5px}
 .task-button{min-width:38px;max-width:112px;padding:4px 6px}
 .taskbar .system-tray{font-size:9px;gap:5px}}
@media(pointer:coarse){
 :root{--bar:48px}
 #start-button,.task-button{height:44px;min-height:44px}
 #windows .window .titlebar{height:44px;min-height:44px}
 .window .window-controls :is(button,a){width:44px;min-height:44px}
 .window .titlebar .window-path button{min-height:44px}}
@media(max-height:480px){
 .desktop-icons{top:56px;grid-auto-rows:minmax(68px,auto)}
 .desktop-icons [data-desktop]{min-height:68px}
 #windows .window .titlebar .window-path{display:flex!important}
 .window .window-status{display:none}
 .window.maximized{top:4px!important;height:calc(100% - 8px)!important}}

@media(max-width:600px){.wallpaper-type{right:16px;width:auto;top:76px;bottom:auto}.wallpaper-type strong{margin-top:10px}}

/* Keep primary window controls and ancestor links usable on narrow phones. */
@media(max-width:430px){
 .window .window-controls .window-external{display:none}
 .window .titlebar .window-path button[data-show-desktop]{font-size:0;min-width:28px}
 .window .titlebar .window-path button[data-show-desktop]::after{content:'⌂';font-size:18px;line-height:1}}
@media(max-width:430px) and (pointer:coarse){.window .titlebar .window-path button[data-show-desktop]{min-width:44px}}

/* Requested compact desktop correction; full touch targets remain available. */
:root{--bar:32px}
.taskbar{padding:1px 8px;gap:6px}
#start-button{height:28px;min-height:28px;min-width:72px;padding:2px 8px;font-size:11px;gap:6px}
.task-button{height:28px;min-height:28px;padding:2px 7px;gap:5px;font-size:10px;max-width:150px}
.task-button>.pixel-icon,.task-button>svg{width:18px;height:18px}
.task-separator{height:22px}
.windows-mark{grid-template-columns:7px 7px;grid-template-rows:7px 7px;gap:2px}
.taskbar .system-tray{font-size:9px;gap:6px}
#clock{line-height:1.15}
#show-desktop{height:28px}
.desktop-icons{left:10px;top:66px;bottom:8px;width:82px;grid-template-columns:1fr;grid-auto-flow:row;grid-auto-rows:minmax(64px,auto);gap:5px;padding:2px 2px 6px}
.desktop-icons [data-desktop]{height:auto;min-height:64px;padding:3px 1px;gap:3px}
.desktop-icon .desktop-icon-copy strong{font-size:10px;line-height:1.2}
.desktop-icon .icon-tile,.desktop-icon .icon-tile:has(>.pixel-icon){width:40px;height:40px;flex:none}
.desktop-icon .icon-tile>svg{width:25px;height:25px}
.desktop-icon .icon-tile>.pixel-icon{position:static;inset:auto;width:40px;height:40px;object-fit:contain;border-radius:0}
@media(max-width:600px){:root{--bar:44px}.taskbar{padding:1px 6px;gap:4px}#start-button,.task-button{height:40px;min-height:40px}.desktop-icons{top:66px;left:8px;width:80px}.task-button{min-width:38px}.taskbar .system-tray{font-size:9px}}
@media(pointer:coarse){:root{--bar:48px}#start-button,.task-button,#show-desktop{height:44px;min-height:44px}#show-desktop{width:44px;flex:0 0 44px}.desktop-icons [data-desktop]{min-height:68px}.windows-mark{grid-template-columns:8px 8px;grid-template-rows:8px 8px;gap:2px}}

/* Photos surfaces and transparent artwork share a dark backdrop. */
/* ===== dark vibe pass 20261006: no white gaps. Generated by inverting the light surfaces and dark text of the stylesheet above; the desktop wallpaper and icon tiles are untouched. ===== */
:root{--ink:#e6edf2;--muted:#9fb1bd;--line:#2a3a4a;--paper:#171d25;--accent:#7fd8bb}
.window{color-scheme:dark;color:#dbe5ec;border-color:#3a5568}.window.active{border-color:#5f8aa3}
.taskbar,.task-button,#start-menu,#start-menu button{color:#dbe5ec}
.window :where(h1,h2,h3,h4,h5,strong,label,legend,dt,th,summary){color:#f2f7fa}
a{color:#88ddc6}
.shortcut{background:#212d3d;color:#92d1d3}
.taskbar{background:rgba(30,41,54,0.937)}
.start-button:hover,.start-button[aria-expanded=true]{background:#243244}
.task-separator{border-left:1px solid #3a4c5c}
.task-button{background:rgba(255,255,255,0.028)}
.task-button::after{background:#243244}
.task-button.active{background:#171d25;border-color:#2a3a4a}
.task-button:hover{background:#171d25}
.system-tray{color:#a8b8c4}
#show-desktop{border-left:1px solid #3a4c5c}
#start-menu{border:1px solid #2a3a4a;background:#1b2330}
#start-menu header{border-bottom:1px solid #2a3a4a}
.avatar{background:#243244;color:#8dd8bb}
#start-menu header span:not(.avatar){color:#a8b8c4}
#start-apps button:hover{background:#212d3d}
#start-menu footer{color:#a8b8c4;border-top:1px solid #2a3a4a}
.window{border:1px solid #3a4c5c}
.window.active{border-color:#2a3a4a}
.titlebar{background:#212d3d;color:#a8b8c4}
.active .titlebar{background:#1e2936;color:#8ed7bd}
.window-controls button:hover{background:#243244}
.window-status{border-top:1px solid #2a3a4a;background:#1b2330;color:#a8b8c4}
.eyebrow{color:#a8b8c4}
.page p{color:#a8b8c4}
.tag{border:1px solid #2a3a4a;background:#1e2936;color:#a8b8c4}
.button{border:1px solid #2a3a4a;background:#171d25;color:#90d5b8}
.badge{border:1px solid #2a3a4a;color:#99ccb1}
.demo-frame{background:#171d25}
.file-list>button:hover,.file-list>a:hover{background:#1e2936}
.gallery-grid figure{background:rgba(255,255,255,0.0028)}
.window-path{background:#1b2330;color:#a8b8c4}
.window-path button{color:#8adbbe}
.folder-item:hover{background:#1e2936}
.folder-item-copy .item-kind{color:#a8b8c4}
.folder-item>svg{color:#96a6b2}
#start-apps small{color:#96a6b2}
.gallery-grid figure{background:#1e2936}
.gallery-grid img{background:#212d3d}
.gallery-grid figcaption{color:#a8b8c4}
#start-apps > .start-cascade-btn:hover,#start-apps .start-quick button:hover,#start-programs button:hover,#start-power button:hover{background:#212d3d;border-color:#2a3a4a}
#start-apps > .start-cascade-btn .cascade-chevron{color:#96a6b2}
#start-apps small,#start-programs small,#start-power small{color:#96a6b2}
.start-cascade{border-left:2px solid #2a3a4a}
.start-quick{border-top:1px solid #2a3a4a}
.titlebar{color:#cdd9e2}
.active .titlebar{color:#96cfba}
.window-status{color:#cdd9e2}
.window-path{color:#cdd9e2;background:#1e2936}
#start-menu{color:#8fbdd6}
#start-menu header span:not(.avatar){color:#cdd9e2}
#start-menu footer{color:#cdd9e2}
#start-apps small,#start-programs small,#start-power small{color:#cdd9e2}
#start-apps > .start-cascade-btn .cascade-chevron{color:#cdd9e2}

#window-duskwood :is(a,button,input,select):focus-visible{outline:3px solid #3a4c5c}
#start-menu{border-color:#3a4c5c;background:linear-gradient(150deg,#1b2330,#1e2936)}
#start-menu .start-cascade{background:rgba(30,41,54,0.502);border-left-color:#3a4c5c}
#start-menu .start-cascade-btn[aria-expanded=true]{background:#212d3d;border-color:#3a4c5c}
#start-menu .start-power-divider{background:#243244}
#start-apps>.start-power-toggle{background:#1e2936;border-color:#2a3a4a;color:#cdd9e2}
#start-apps>.start-power-toggle>svg{color:#cdab98}
.window .window-controls a:hover{background:#243244}
.window iframe{background:#0b1016}

/* ===== Restructure 20261021: pixel icons, desktop grid, project/game detail pages, About, lightbox ===== */
.pixel-icon{image-rendering:pixelated}
.icon-tile.px{background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;clip-path:none!important;display:grid;place-items:center;overflow:visible}
/* Desktop: column-major grid that wraps, ~58px icons */
.desktop-icons{left:14px;top:66px;bottom:8px;right:auto;width:auto;max-width:calc(100% - 28px);display:grid;grid-auto-flow:column;grid-template-columns:none;grid-template-rows:repeat(auto-fill,minmax(98px,98px));grid-auto-columns:96px;gap:4px 6px;padding:2px 4px 6px;overflow:auto;align-content:start;justify-content:start}
.desktop-icons [data-desktop]{grid-area:auto;width:96px;height:98px;min-height:0;padding:4px 3px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;border-radius:8px}
.desktop-icon .icon-tile.px{width:58px;height:58px;flex:none}
.desktop-icon .icon-tile.px>.pixel-icon{position:static;width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 3px 2px #06181966)}
.desktop-icon .desktop-icon-copy{width:100%;min-width:0;text-align:center}
.desktop-icon .desktop-icon-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;line-height:1.2;font-weight:500;color:#e8f3f0;text-shadow:0 1px 2px #000a;overflow-wrap:anywhere}
.wallpaper-type{left:auto;right:5%;top:22%;width:min(44%,640px);max-width:none}
@media(max-width:1100px) and (min-width:601px){.wallpaper-type{width:min(38%,420px)}.wallpaper-type strong{font-size:clamp(30px,4.6vw,52px)}.desktop-note{display:none}}
@media(max-width:800px) and (min-width:601px){.wallpaper-type{display:none}}
@media(max-width:600px){
 .desktop-icons{left:8px;right:8px;top:62px;bottom:6px;width:auto;max-width:none;grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:92px;grid-auto-columns:auto;gap:4px 2px;padding:2px 0 8px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
 .desktop-icons [data-desktop]{width:100%;height:92px}
 .desktop-icon .icon-tile.px,.desktop-icon .icon-tile.px>.pixel-icon{width:50px;height:50px}
 .wallpaper-type{display:none}}
/* Start menu / window glyphs */
#start-menu .pixel-icon{width:28px;height:28px}
.title-caption>.pixel-icon,.task-button>.pixel-icon{width:20px;height:20px}
.folder-item .icon-tile.px{width:44px;height:44px}.folder-item .icon-tile.px .pixel-icon{width:40px;height:40px}
.file-list .icon-tile.px{width:44px;height:44px}.file-list .icon-tile.px .pixel-icon{width:40px;height:40px}
a.button{display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.portfolio-heading{margin:28px 0 8px;font-size:20px;display:flex;align-items:baseline;gap:10px}.portfolio-heading small{font:11px Consolas,monospace;opacity:.7}
.stories-bar{flex:none;display:flex;justify-content:flex-end;padding:6px 10px;background:#171d25;border-bottom:1px solid #2a3a4a}
/* Project / game detail template */
.pd-page{max-width:1000px;margin-inline:auto}
.pd-head h1{margin:.1em 0 .25em}
.pd-tagline{font-size:18px;line-height:1.45;margin:0 0 16px;opacity:.9}
.pd-actions{margin:0 0 22px}
.pd-hero{position:relative;margin:0 0 26px;border-radius:12px;overflow:hidden;background:#0e1621;border:1px solid #2a3a4a;min-height:120px}
.pd-hero .pd-thumb{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in}
.pd-hero img{display:block;width:100%;max-height:420px;object-fit:contain;background:#0b1016}
.pd-hero-icon{display:none;place-items:center;padding:34px;background:linear-gradient(145deg,#152e3b,#0d1b27)}
.pd-hero-icon .pixel-icon{width:128px;height:128px}
.pd-hero-missing .pd-hero-icon{display:grid}
.pd-section{margin:0 0 26px}
.pd-section h2{font-size:20px;margin:0 0 10px}
.pd-section p,.pd-steps,.pd-features{font-size:15px;line-height:1.65;max-width:75ch}
.pd-steps,.pd-features{padding-left:1.4em;margin:0}.pd-steps li,.pd-features li{margin:0 0 8px}
.pd-roadmap-group h3{font-size:16px;margin:18px 0 8px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.pd-roadmap-group:first-child h3{margin-top:0}.pd-badge{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border:1px solid currentColor;border-radius:999px;opacity:.85}.pd-roadmap-note{font-size:14px;opacity:.85}
.pd-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.pd-emphasis .pd-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.pd-media{margin:0;border:1px solid #2a3a4a;border-radius:10px;overflow:hidden;background:#121a24}
.pd-media .pd-thumb{display:block;width:100%;padding:0;border:0;background:#0b1016;cursor:zoom-in}
.pd-media img,.pd-media video{display:block;width:100%;height:150px;object-fit:cover;background:#000}
.pd-emphasis .pd-media img,.pd-emphasis .pd-media video{height:210px}
.pd-media figcaption{padding:8px 10px;font-size:12px;line-height:1.4;opacity:.85}
.pd-audio{padding:10px}.pd-audio figcaption{padding:0 0 8px}.pd-audio audio{width:100%}
.pd-video{grid-column:span 2}.pd-video video{height:auto;max-height:300px}
.pd-related{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}.pd-related>span{font:11px Consolas,monospace;letter-spacing:1px;text-transform:uppercase;opacity:.7}
/* About */
.about-portrait{margin:0}.about-portrait .pd-thumb{display:block;padding:0;border:1px solid #2a3a4a;border-radius:12px;overflow:hidden;background:#0e1621;cursor:zoom-in}.about-portrait img{display:block;width:100%;height:auto;image-rendering:auto}.about-text p{font-size:16px;line-height:1.7;margin:0 0 14px;max-width:70ch}
.about-links{margin-bottom:10px}
@media(max-width:700px){.about-portrait{max-width:220px}.pd-video{grid-column:auto}.pd-tagline{font-size:16px}}
/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:100000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px;background:#050a10f2;color:#e6eef3}
.lightbox[hidden]{display:none}
.lightbox img{max-width:min(96vw,1400px);max-height:calc(100dvh - 130px);object-fit:contain;background:#0b1016;border-radius:6px}
.lightbox p{margin:0;font-size:13px;max-width:80ch;text-align:center}
.lightbox-bar{display:flex;gap:8px;align-items:center}
.lightbox-bar button{min-height:36px;min-width:44px;padding:4px 12px;border:1px solid #3a4c5c;background:#1b2330;color:#e6eef3;border-radius:6px}
.lightbox-bar span{font:12px Consolas,monospace;min-width:70px;text-align:center}
@media(max-width:1250px) and (min-width:601px),(max-height:680px) and (min-width:601px){.wallpaper-type{display:none}}
.pixel-icon,.pd-hero-icon .pixel-icon{background:none!important}
/* Arcade note styled as a quiet caption */

/* Start menu: clean two-line cascade rows, single scroll container */
#start-menu #start-programs{max-height:clamp(140px,calc(100dvh - 480px),420px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;padding:4px 4px 4px 8px}
#start-menu #start-programs button{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:12px;text-align:left;flex:0 0 auto;min-height:48px;padding:8px}
#start-menu #start-programs button>.pixel-icon,#start-menu #start-programs button>svg{flex:0 0 28px;width:28px;height:28px}
#start-menu #start-programs button>span{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;text-align:left;font-size:14px;line-height:1.25}
#start-menu #start-programs button>span>small{order:2;display:block;flex-shrink:1;white-space:normal;text-align:left;font:10px/1.3 Consolas,monospace}
#start-apps:has(#start-programs:not([hidden])) .start-quick{display:none}

/* ===== Reorg 20261021d: nine grouped desktop icons, folder tiles, resizable windows, About redesign ===== */
#desktop-icons.desktop-icons{left:22px;top:70px;bottom:14px;right:auto;width:auto;max-width:calc(100% - 44px);display:flex;flex-direction:column;gap:14px;padding:2px 4px 8px;overflow-y:auto;overflow-x:hidden;align-content:normal;scrollbar-width:thin}
.icon-group{align-self:flex-start;border:1px solid #ffffff1c;background:#0a1f2b70;border-radius:14px;padding:8px 10px 10px}
.icon-group-label{margin:0 0 4px 8px;font:400 10px Consolas,monospace;letter-spacing:2px;text-transform:uppercase;color:#9fc3bc}
.icon-group-grid{display:grid;grid-template-columns:repeat(3,118px);gap:2px}
#desktop-icons .desktop-icon{grid-area:auto;width:118px;height:auto;min-height:116px;padding:8px 4px 6px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;text-align:center;border-radius:10px}
#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:72px;height:72px}
#desktop-icons .icon-tile.px>.pixel-icon{position:static;object-fit:contain}
#desktop-icons .desktop-icon-copy{width:100%;min-width:0;text-align:center}
#desktop-icons .desktop-icon-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.25;font-weight:500;color:#eef7f4;text-shadow:0 1px 2px #000b;overflow-wrap:anywhere}
@media(max-height:620px) and (min-width:700px){.icon-group-grid{grid-template-columns:repeat(6,100px)}#desktop-icons .desktop-icon{width:100px;min-height:104px}#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:60px;height:60px}}
@media(max-width:699px){
 #desktop-icons.desktop-icons{left:8px;right:8px;top:62px;bottom:6px;max-width:none;gap:10px}
 .icon-group{align-self:stretch;padding:6px 6px 8px}
 .icon-group-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 #desktop-icons .desktop-icon{width:100%;min-height:104px}
 #desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:62px;height:62px}
 #desktop-icons .desktop-icon-copy strong{font-size:12px}}

/* Windows: any size on desktop, full-screen on phones; eight invisible resize handles */
@media(min-width:700px){#windows .window{max-width:none;max-height:none;min-width:360px;min-height:300px}}
@media(max-width:699px){.window{left:7px!important;top:7px!important;width:calc(100% - 14px)!important;height:calc(100% - 14px)!important;max-width:none!important;max-height:none!important}.rz{display:none!important}}
.rz{position:absolute;z-index:8;display:block;touch-action:none;background:none}
.rz-n,.rz-s{left:14px;right:14px;height:6px;cursor:ns-resize}.rz-n{top:0}.rz-s{bottom:0}
.rz-e,.rz-w{top:14px;bottom:14px;width:6px;cursor:ew-resize}.rz-e{right:0}.rz-w{left:0}
.rz-ne,.rz-nw,.rz-se,.rz-sw{width:14px;height:14px}
.rz-ne{top:0;right:0;cursor:nesw-resize}.rz-sw{bottom:0;left:0;cursor:nesw-resize}.rz-nw{top:0;left:0;cursor:nwse-resize}.rz-se{bottom:0;right:0;cursor:nwse-resize}
.window.maximized .rz{display:none}
.window.resizing{user-select:none}.window.resizing iframe{pointer-events:none}

/* Folder windows: big preview tiles */
.folder-grid-page{max-width:none;padding:28px 32px 36px}
.folder-head{display:flex;align-items:center;gap:20px;margin-bottom:24px}
.folder-head-icon{flex:none}.folder-head-icon .pixel-icon{width:84px;height:84px}
.folder-head h1{margin:0 0 6px}.folder-head .eyebrow{margin-bottom:6px}.folder-head .lead{margin:0;font-size:15px;line-height:1.55;max-width:70ch}
.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.tile-grid-4{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.tile{display:flex;flex-direction:column;text-align:left;padding:0;border:1px solid #2a3a4a;border-radius:14px;overflow:hidden;background:#141c26;color:inherit;font:inherit;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}
.tile:hover,.tile:focus-visible{transform:translateY(-3px);border-color:#5f8aa3;box-shadow:0 14px 34px #0009}
.tile-media{position:relative;display:block;aspect-ratio:16/9;background:linear-gradient(145deg,#152e3b,#0d1b27);overflow:hidden}
.tile-media>img,.tile-media>video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.tile-media>img.contain{object-fit:contain;padding:12px;background:#0e1621}
.tile-media>video{opacity:0;transition:opacity .25s;background:#000;pointer-events:none}.tile.playing .tile-media>video{opacity:1}
.tile-icon{position:absolute;left:10px;bottom:10px;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;background:#050a10b8}
.tile-icon .pixel-icon{width:36px;height:36px}
.tile-media:not(:has(>img)) .tile-icon{left:50%;top:50%;bottom:auto;width:110px;height:110px;transform:translate(-50%,-50%);background:none}
.tile-media:not(:has(>img)) .tile-icon .pixel-icon{width:100px;height:100px}
.tile-play{position:absolute;right:10px;top:10px;font:11px Consolas,monospace;letter-spacing:1px;padding:4px 9px;border-radius:999px;background:#050a10cc;color:#e6eef3;transition:opacity .2s}
.tile.playing .tile-play{opacity:0}
.tile-copy{display:flex;flex-direction:column;gap:6px;padding:14px 16px 17px}
.tile-copy small{font:10px Consolas,monospace;letter-spacing:1px;text-transform:uppercase;color:#a8b8c4}
.tile-copy strong{font-size:18px;line-height:1.25}
.tile-copy>span{font-size:13px;line-height:1.5;color:#a8b8c4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media(hover:none){.tile-play{display:none}}
@media(prefers-reduced-motion:reduce){.tile,.tile-media>video,.tile-play{transition:none}.tile:hover,.tile:focus-visible{transform:none}.tile-play{display:none}}
@media(max-width:699px){.folder-grid-page{padding:20px 16px 28px}.tile-grid{grid-template-columns:1fr;gap:16px}.folder-head-icon .pixel-icon{width:64px;height:64px}}
.linkish{background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer}.linkish:hover{text-decoration:underline;text-underline-offset:4px}
.portfolio-page{max-width:1000px;margin-inline:auto}

/* Start menu section headers */
.start-section{font:10px Consolas,monospace;letter-spacing:1.5px;text-transform:uppercase;color:#7fa6a0;padding:12px 8px 3px}
#start-menu #start-programs .start-folder{font-weight:600}

/* Detail pages: roomier text, bigger thumbnails, full-width video */
.pd-page{max-width:1180px}
.pd-hero img{max-height:560px}
.pd-section p,.pd-steps,.pd-features{font-size:16px;max-width:72ch}
.pd-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.pd-emphasis .pd-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}
.pd-media img,.pd-media video{height:200px}
.pd-emphasis .pd-media img,.pd-emphasis .pd-media video{height:260px}
.pd-video{grid-column:1/-1}.pd-video video{width:100%;height:auto;max-height:70vh;background:#000}
@media(max-width:699px){.pd-gallery-grid,.pd-emphasis .pd-gallery-grid{grid-template-columns:1fr}.pd-media img,.pd-emphasis .pd-media img{height:auto;max-height:320px}}

/* About Casey */
.about-page{max-width:1180px;margin-inline:auto;padding:28px 32px 40px}
.about-hero{display:grid;grid-template-columns:210px 1fr;gap:30px;align-items:center;padding:26px 30px;border-radius:16px;border:1px solid #2a3a4a;background:radial-gradient(ellipse at 88% 0,#2a5d6a80,transparent 60%),linear-gradient(135deg,#142532,#0f1b27);margin-bottom:22px}
.about-hero:not(:has(.about-portrait:not([hidden]))){grid-template-columns:1fr}
.about-hero .about-portrait{margin:0}.about-hero .about-portrait .pd-thumb{width:100%}
.about-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.1;margin:0 0 8px}
.about-hero .eyebrow{margin-bottom:8px}
.about-page .about-headline{font-size:clamp(15px,1.6vw,19px);line-height:1.4;color:#9fe0c8;margin:0 0 20px}
.about-cols{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:22px;align-items:start}
.about-card{border:1px solid #2a3a4a;border-radius:14px;background:#141c26;padding:20px 24px}
.about-card h2{margin:0 0 14px;font:400 11px Consolas,monospace;letter-spacing:2px;text-transform:uppercase;color:#a8b8c4}
.about-side{display:flex;flex-direction:column;gap:22px}
.about-card .about-text p{font-size:16px;line-height:1.7;max-width:68ch}.about-card .about-text p:last-child{margin-bottom:0}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.chips li{padding:6px 12px;border:1px solid #2f4658;background:#1b2836;border-radius:999px;font-size:13px;line-height:1.3;color:#cfe3dc}
.cert-row{display:flex;flex-direction:column;gap:5px;padding:14px 0;border-top:1px solid #2a3a4a}.cert-row:first-of-type{border-top:0;padding-top:0}.cert-row:last-child{padding-bottom:0}
.cert-row strong{font-size:15px;line-height:1.35}.cert-row>span:last-child{font-size:13px;line-height:1.5;color:#a8b8c4}
.cert-badge{align-self:flex-start;font:10px Consolas,monospace;letter-spacing:1.2px;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid #3a4c5c;color:#cdd9e2}.cert-badge.done{border-color:#3f8f74;color:#8fe3c3;background:#12302a}
.about-featured{margin-top:26px}.about-featured-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.about-featured-head h2{margin:0;font-size:20px}
@media(max-width:850px){.about-cols{grid-template-columns:1fr}}
@media(max-width:699px){.about-page{padding:16px 14px 30px}.about-hero{grid-template-columns:1fr;gap:18px;padding:18px}.about-hero .about-portrait{max-width:150px}.about-card{padding:16px 18px}.about-featured .tile-grid-4{grid-template-columns:1fr 1fr;gap:12px}.about-featured .tile-copy{padding:10px 12px 12px}.about-featured .tile-copy>span{display:none}.about-featured .tile-copy strong{font-size:15px}}

/* ===== Tweaks 2 (20261021f): smaller desktop icons, condensed folder tiles, larger windows, library pages, Metacritic badges ===== */

/* 1. Desktop icons: ~52px sprites on a tighter grid (still 44px+ touch targets) */
.icon-group-grid{grid-template-columns:repeat(3,86px);gap:2px}
#desktop-icons .desktop-icon{width:86px;min-height:88px;padding:6px 3px 5px;gap:4px}
#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:52px;height:52px}
#desktop-icons .desktop-icon-copy strong{font-size:12px;line-height:1.2}
@media(max-height:620px) and (min-width:700px){.icon-group-grid{grid-template-columns:repeat(6,80px)}#desktop-icons .desktop-icon{width:80px;min-height:80px}#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:46px;height:46px}}
@media(max-width:699px){
 .icon-group-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 #desktop-icons .desktop-icon{width:100%;min-height:80px}
 #desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:46px;height:46px}
 #desktop-icons .desktop-icon-copy strong{font-size:11px}
}
@media(max-width:699px) and (max-height:500px){.icon-group-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}

/* 3. Folder windows: condensed 16:9 tiles, 4-5 columns on a wide desktop */
.folder-grid-page{padding:22px 26px 30px}
.tile-grid{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}
@media(max-width:900px) and (min-width:700px){.folder-grid-page{padding:18px 16px 26px}.tile-grid{gap:12px}}
.tile{border-radius:10px}
.tile-icon{left:6px;bottom:6px;width:32px;height:32px;border-radius:8px}
.tile-icon .pixel-icon{width:26px;height:26px}
.tile-media:not(:has(>img)) .tile-icon{width:76px;height:76px}
.tile-media:not(:has(>img)) .tile-icon .pixel-icon{width:68px;height:68px}
.tile-copy{gap:3px;padding:9px 11px 11px}
.tile-copy small{font-size:9px;letter-spacing:.8px}
.tile-copy strong{font-size:14px;line-height:1.25}
.tile-copy>span{font-size:12px;line-height:1.4;-webkit-line-clamp:2}
.tile-play{right:6px;top:6px;font-size:10px;padding:3px 7px}
@media(max-width:699px){.folder-grid-page{padding:16px 14px 24px}.tile-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.tile-copy>span{display:none}}

/* 3. Detail pages: hero capped at 40vh, whole image visible */
.pd-hero .pd-thumb{display:grid;place-items:center}
.pd-hero img{width:auto;max-width:100%;height:auto;max-height:40vh;object-fit:contain;margin-inline:auto}

.game-card{grid-template-columns:minmax(0,460px) minmax(0,1fr);align-items:start}
.game-art{display:flex;flex-direction:column;background:#0c1722;max-width:460px;width:100%}
.game-art img{width:100%;height:auto;aspect-ratio:460/215;object-fit:contain;background:#0c1722}

@media(max-width:959px){.game-card{grid-template-columns:minmax(0,1fr)}.game-art{max-width:460px}.game-art img{max-height:none;object-fit:contain}}



/* ===== Round 3 (20261022a): one-column desktop, combined projects folder ===== */
#desktop-icons.desktop-icons{left:18px;top:56px;bottom:12px;right:auto;width:auto;max-width:none;display:flex;flex-direction:column;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;justify-content:flex-start;gap:4px 10px;padding:0;overflow:visible;background:none;border:0;box-shadow:none}
#desktop-icons .desktop-icon{grid-area:auto;flex:0 0 auto;width:128px;height:auto;min-height:80px;padding:5px 6px 5px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;text-align:center;background:transparent;border:1px solid transparent;border-radius:10px;box-shadow:none}
#desktop-icons .desktop-icon:hover{background:#ffffff12;border-color:#ffffff24}
#desktop-icons .desktop-icon:focus-visible{outline:2px solid #ffd479;outline-offset:2px;background:#ffffff14}
#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:52px;height:52px}
#desktop-icons .icon-tile.px{flex:none;background:none;border:0;box-shadow:none}
#desktop-icons .desktop-icon-copy{width:100%;min-width:0;text-align:center}
#desktop-icons .desktop-icon-copy strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px;line-height:1.2;font-weight:600;color:#f6fbf9;text-shadow:0 1px 2px #000,0 0 4px #000d,0 0 10px #000a;overflow-wrap:normal}
@media(min-height:800px) and (min-width:700px){#desktop-icons.desktop-icons{top:64px;gap:8px 12px}#desktop-icons .desktop-icon{min-height:92px}#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:64px;height:64px}#desktop-icons .desktop-icon-copy strong{font-size:13px}}
@media(max-height:480px){#desktop-icons.desktop-icons{top:48px;bottom:8px;gap:2px 8px}#desktop-icons .desktop-icon{width:112px;min-height:60px;padding:3px 4px}#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:38px;height:38px}#desktop-icons .desktop-icon-copy strong{font-size:11.5px;line-height:1.15}}
@media(max-width:699px){#desktop-icons.desktop-icons{left:8px;right:auto;top:58px;bottom:8px;gap:4px 8px}#desktop-icons .desktop-icon{width:106px;min-height:72px}#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:48px;height:48px}#desktop-icons .desktop-icon-copy strong{font-size:11.5px;-webkit-line-clamp:4}}
@media(max-width:699px) and (max-height:480px){#desktop-icons .desktop-icon{width:100px;min-height:60px}#desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:38px;height:38px}}
.icon-group,.icon-group-label,.icon-group-grid{display:contents}

/* Combined folder: four subheadings over condensed tiles */
.folder-group{margin-top:26px}.folder-group:first-of-type{margin-top:4px}
.folder-group-title{display:flex;align-items:baseline;gap:10px;margin:0 0 12px;padding:0 0 8px;font-size:18px;line-height:1.3;color:#e6eef3;border-bottom:1px solid #2a3a4a}
.folder-group-title small{font:11px Consolas,monospace;letter-spacing:1px;color:#a8b8c4}
@media(max-width:699px){.folder-group{margin-top:20px}.folder-group-title{font-size:16px}}
#desktop-icons .desktop-icon::before,#desktop-icons .desktop-icon::after{content:none!important;display:none}

/* Simplified original icon system; preserve established control sizes and labels. */
.design-icon { color:#ece6d6; --icon-fill:#577f6f; --icon-accent:#927744; image-rendering:auto!important; }
.tile-play,.lightbox-close { display:inline-flex;align-items:center;gap:6px; }
.tile-play .design-icon { width:12px;height:12px; }
.cascade-chevron .design-icon { width:16px;height:16px; }
.lightbox-bar .design-icon { width:20px;height:20px; }
.start-mark { flex:none; }
.pd-hero img[src*="media/design/covers/"] { width:100%;max-height:52vh;object-fit:contain; }


/* Title sizes: exactly 110% of each existing responsive CSS size. */
.wallpaper-type strong{font-size:calc((clamp(48px, 5.7vw, 90px)) * 1.1);}
#start-menu strong{font-size:calc((16px) * 1.1);}
.title-caption{font-size:calc((13px) * 1.1);}
.page h1{font-size:calc((34px) * 1.1);}
.page h2{font-size:calc((19px) * 1.1);}
.page h3{font-size:calc((17px) * 1.1);}
@media (min-width: 1450px) {.page h1{font-size:calc((38px) * 1.1);}
}
@media (max-width: 900px) {.wallpaper-type strong{font-size:calc((55px) * 1.1);}
}
@media (max-width: 600px) {.wallpaper-type strong{font-size:calc((43px) * 1.1);}
.title-caption{font-size:calc((12px) * 1.1);}
.page h1{font-size:calc((30px) * 1.1);}
}
.file-list strong{font-size:calc((17px) * 1.1);}
.desktop-icon-copy strong{font-size:calc((15px) * 1.1);}
.wallpaper-type strong{font-size:calc((clamp(42px, 5.4vw, 86px)) * 1.1);}
.folder-item-copy strong{font-size:calc((16px) * 1.1);}
@media (max-width: 1100px) and (min-width: 601px) {.wallpaper-type strong{font-size:calc((clamp(36px, 5.4vw, 59px)) * 1.1);}
}
@media (max-width: 600px) {.desktop-icon-copy strong{font-size:calc((13px) * 1.1);}
.wallpaper-type strong{font-size:calc((39px) * 1.1);}
.folder-item-copy strong{font-size:calc((14px) * 1.1);}
}
@media (max-width: 350px) {.desktop-icon-copy strong{font-size:calc((12px) * 1.1);}
}
.desktop-icon-copy strong{font-size:calc((14px) * 1.1);}
@media (max-width: 1100px) {.desktop-icon-copy strong{font-size:calc((12px) * 1.1);}
.wallpaper-type strong{font-size:calc((clamp(38px, 5vw, 70px)) * 1.1);}
}
@media (max-width: 600px) {.desktop-icon-copy strong{font-size:calc((12px) * 1.1);}
.wallpaper-type strong{font-size:calc((24px) * 1.1);}
}
.desktop-icon .desktop-icon-copy strong{font-size:calc((11px) * 1.1);}
@media (max-width: 600px) {.wallpaper-type strong{font-size:calc((30px) * 1.1);}
}
.desktop-icon .desktop-icon-copy strong{font-size:calc((10px) * 1.1);}
.desktop-icon .desktop-icon-copy strong{font-size:calc((11px) * 1.1);}
@media (max-width: 1100px) and (min-width: 601px) {.wallpaper-type strong{font-size:calc((clamp(30px, 4.6vw, 52px)) * 1.1);}
}
.pd-section h2{font-size:calc((20px) * 1.1);}
.pd-roadmap-group h3{font-size:calc((16px) * 1.1);}
#desktop-icons .desktop-icon-copy strong{font-size:calc((13px) * 1.1);}
@media (max-width: 699px) {#desktop-icons .desktop-icon-copy strong{font-size:calc((12px) * 1.1);}
}
.tile-copy strong{font-size:calc((18px) * 1.1);}
.about-hero h1{font-size:calc((clamp(30px, 4vw, 48px)) * 1.1);}
.about-card h2{font-size:calc((11px) * 1.1);}
.about-featured-head h2{font-size:calc((20px) * 1.1);}
@media (max-width: 699px) {.about-featured .tile-copy strong{font-size:calc((15px) * 1.1);}
}
#desktop-icons .desktop-icon-copy strong{font-size:calc((12px) * 1.1);}
@media (max-width: 699px) {#desktop-icons .desktop-icon-copy strong{font-size:calc((11px) * 1.1);}
}
.tile-copy strong{font-size:calc((14px) * 1.1);}
#desktop-icons .desktop-icon-copy strong{font-size:calc((12.5px) * 1.1);}
@media (min-height: 800px) and (min-width: 700px) {#desktop-icons .desktop-icon-copy strong{font-size:calc((13px) * 1.1);}
}
@media (max-height: 480px) {#desktop-icons .desktop-icon-copy strong{font-size:calc((11.5px) * 1.1);}
}
@media (max-width: 699px) {#desktop-icons .desktop-icon-copy strong{font-size:calc((11.5px) * 1.1);}
}
.folder-group-title{font-size:calc((18px) * 1.1);}
.folder-group-title small{font-size:calc((11px) * 1.1);}
@media (max-width: 699px) {.folder-group-title{font-size:calc((16px) * 1.1);}
}

/* Versioned, transparent desktop miniatures; desktop buttons and labels remain unchanged. */
#desktop-icons .desktop-icon .desktop-mini-tile{width:60px;height:60px;flex:none;padding:0;background:none;border:0;border-radius:0;box-shadow:none;overflow:visible}
#desktop-icons .desktop-mini-image{display:block;width:60px;height:60px;object-fit:contain;filter:drop-shadow(0 3px 2px #06181966)}

/* Phone layout: fit the viewport and keep full images visible. */
@media(max-width:699px){
 :root{--bar:calc(52px + env(safe-area-inset-bottom,0px))}
 #desktop{height:calc(100dvh - var(--bar));min-height:0}
 .taskbar{height:var(--bar);padding:4px 8px calc(4px + env(safe-area-inset-bottom,0px));gap:6px}
 .taskbar .system-tray,.taskbar .task-separator{display:none}
 .taskbar .start-button,.taskbar .task-button{height:44px;min-height:44px;min-width:44px;padding:6px 10px}
 #task-buttons{min-width:0;flex:1}
 #show-desktop{min-width:44px;min-height:44px}
 #desktop-icons.desktop-icons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-flow:row;grid-auto-rows:auto;left:12px;right:12px;top:62px;bottom:10px;width:auto;max-width:none;gap:12px 8px;overflow-y:auto;overflow-x:hidden;align-content:start;align-items:stretch;justify-content:stretch;padding:4px}
 #desktop-icons .desktop-icon{width:100%;height:auto;min-height:112px;padding:8px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:7px}
 #desktop-icons .desktop-icon-copy{width:100%;min-width:0;text-align:center}
 #desktop-icons .desktop-icon-copy strong{display:block;-webkit-line-clamp:unset;overflow:visible;white-space:normal;overflow-wrap:anywhere;line-height:1.3}
 #desktop-icons .icon-tile.px,#desktop-icons .icon-tile.px>.pixel-icon{width:56px;height:56px}
 #windows .window,#windows .window.maximized{left:0!important;top:0!important;width:100%!important;height:100%!important;min-width:0;min-height:0;max-width:none!important;max-height:none!important;border-radius:0}
 #windows .window .titlebar{min-height:44px;height:44px;flex:0 0 44px}
 .window-controls button{min-width:44px;min-height:44px}
 .window .window-status{display:none}
 .window .frame-layout{min-height:0;height:100%;overflow:hidden}
 .window .demo-frame{min-height:0!important;flex:1;height:100%;width:100%}
 .pd-gallery-grid,.pd-emphasis .pd-gallery-grid{grid-template-columns:minmax(0,1fr)}
 .pd-media img,.pd-media video,.pd-emphasis .pd-media img,.pd-emphasis .pd-media video{height:auto;max-height:none;object-fit:contain}
 .gallery-grid{grid-template-columns:minmax(0,1fr)}
 .gallery-grid img,.gallery-grid video{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain}
 .lightbox{height:100dvh;padding:12px 8px calc(12px + env(safe-area-inset-bottom,0px));overflow:auto;justify-content:flex-start}
 .lightbox img{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 180px);flex:0 1 auto;min-height:0}
 .lightbox-bar{flex-wrap:wrap;justify-content:center;flex:0 0 auto}
 .lightbox-bar button{min-height:44px;min-width:44px}
 .lightbox p{flex:0 0 auto;overflow-wrap:anywhere}
}

@media(max-width:950px) and (pointer:coarse){.lightbox-bar button{min-height:44px;min-width:44px}.lightbox{overflow:auto}}
/* rc3: recruiter first screen. Resume is a plain link drawn like the other desktop icons; the topline link reuses the label palette. */
a.desktop-icon-link{color:inherit;text-decoration:none}
.topline-link{margin-left:14px;font:11px Consolas,monospace;letter-spacing:1px;text-transform:uppercase;color:#9fc3bc;text-decoration:none;border-bottom:1px solid #9fc3bc55;padding-bottom:1px}
.topline-link:hover,.topline-link:focus-visible{color:#e7fff6;border-bottom-color:#a9efd6}
@media(max-width:600px){.topline-link{display:block;margin:6px 0 0;font-size:10px}}
