/* Perspective and remote-video overrides. */
.boss {
  z-index: 3 !important;
  transition: transform .08s linear, left .08s linear !important;
}

.scene img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #050505;
  display: none;
}

.scene img.ready { display: block; }
.scene .fallback { font-size: 100px; animation: video 1.2s ease-in-out infinite alternate; }
.scene .fallback.hidden { display: none !important; }
.loader { color: white; font: 12px Consolas, monospace; animation: pulse .6s infinite alternate; }

.thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.thumb > span { display: none; }

.youtube .yt-body { padding: 0; overflow: hidden; background: #090909; }
.short-feed { position: relative; width: 100%; height: 100%; display: grid; place-items: center; background: #090909; }
.short-video { position: relative; width: min(90%, 900px); height: auto; aspect-ratio: 16 / 9; max-height: 100%; overflow: hidden; background: #050505; box-shadow: 0 0 35px #000; }
.short-video img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; display: none; background: #050505; }
.short-video img.ready { display: block; }
.short-video .fallback { position: absolute; inset: 0; display: grid; place-items: center; font-size: 100px; color: white; background: radial-gradient(circle, #3d5278, #101827); }
.short-gradient { position: absolute; inset: 40% 0 0; background: linear-gradient(transparent, #000d); pointer-events: none; }
.short-copy { position: absolute; z-index: 3; left: 15px; right: 55px; bottom: 22px; color: white; text-align: left; text-shadow: 1px 2px #000; font-size: 11px; }
.short-copy b,.short-copy span,.short-copy small { display: block; margin-top: 6px; }
.short-copy b { font-size: 14px; }.short-copy small { opacity: .8; }
.short-copy .video-tag { display: block; width: max-content; margin-top: 6px; padding: 2px 6px; border-radius: 3px; background: #ffffff22; color: #ffcfdf; font-size: 10px; text-shadow: 1px 1px #000; }
.actions { position: absolute; z-index: 4; right: 9px; bottom: 28px; display: grid; gap: 10px; }
.actions button { border: 0; background: transparent; color: white; font-size: 22px; filter: drop-shadow(1px 2px #000); padding: 0; }
.actions small { display: block; font-size: 8px; }.actions i { font-size: 9px; background: #ff2d55; border-radius: 50%; padding: 1px 3px; }
.video-progress { position: absolute; z-index: 5; left: 0; right: 0; bottom: 0; height: 3px; background: #ffffff44; }.video-progress i { display: block; height: 100%; width: 0; background: white; }
.nav-video { position: absolute; z-index: 7; right: 12%; width: 38px; height: 38px; border: 0; border-radius: 50%; background: #ffffff22; color: white; font-size: 16px; }.nav-video:hover { background: #ffffff44; }.nav-video.up { top: 35%; }.nav-video.down { top: 53%; }
.swipe-hint { position: absolute; left: 12px; bottom: 8px; color: #ffffff55; font: 8px Consolas; writing-mode: vertical-rl; }
.short-feed.switching .short-video { animation: feedSwitch .22s ease-out; }
@keyframes feedSwitch { from { transform: translateY(35px); opacity: .2; } to { transform: none; opacity: 1; } }

@media (max-width: 700px) { .short-video { width: 96%; max-height: 100%; }.nav-video { right: 3%; }.swipe-hint { display: none; } }

.youtube header b .logo-mark { position: relative; display: inline-block; width: 34px; height: 30px; padding: 0; vertical-align: middle; background: transparent; overflow: visible; }
.logo-mark .banana { position: absolute; left: 7px; top: -2px; width: 22px; height: 25px; border: 7px solid #ead8b3; border-top-color: transparent; border-right-width: 4px; border-radius: 45%; transform: rotate(-22deg); filter: drop-shadow(1px 2px #8b7958); }
.logo-mark .egg { position: absolute; bottom: -1px; width: 13px; height: 10px; border-radius: 50%; background: #f2e4c8; box-shadow: 1px 2px #8b7958; }
.logo-mark .egg-a { left: 4px; transform: rotate(12deg); }.logo-mark .egg-b { right: 3px; transform: rotate(-12deg); }

.actions button { position: relative; }
.actions button.liked { transform: scale(1.18); filter: drop-shadow(0 0 7px #ff3864); }
.actions button.burst::before { content: ''; position: absolute; z-index: 5; left: 50%; bottom: 53%; width: 13px; height: 30px; border-radius: 48% 52% 62% 38%; background: #fff; box-shadow: -9px 5px 0 -3px #fff,10px -2px 0 -4px #fff,3px 11px 0 -4px #eaf4ff; filter: drop-shadow(0 2px 2px #9bbbd0); transform-origin: 50% 100%; animation: gooShot .72s cubic-bezier(.2,.8,.2,1) forwards; pointer-events: none; }
.actions button.burst::after { content: ''; position: absolute; left: 45%; bottom: 58%; width: 7px; height: 7px; border-radius: 50%; background: #fff; box-shadow: -14px 4px 0 -1px #fff,13px -8px 0 -2px #fff,-5px -13px 0 -2px #fff; animation: gooDrops .82s ease-out forwards; pointer-events: none; }
@keyframes gooShot { 0% { transform: translate(-50%,4px) scale(.45,.15); opacity: 1; } 40% { transform: translate(-50%,-25px) scale(.75,1.45); } 75% { transform: translate(-50%,-48px) scale(1.2,.7); opacity: .95; } 100% { transform: translate(-50%,-58px) scale(1.45,.3); opacity: 0; } }
@keyframes gooDrops { from { transform: translate(0,0) scale(.4); opacity: 1; } to { transform: translate(-7px,-55px) rotate(28deg) scale(1.25); opacity: 0; } }

.comments-panel { position: absolute; z-index: 12; right: 0; top: 0; bottom: 0; width: min(58%, 380px); background: #ffffffe0; color: #182039; box-shadow: -10px 0 25px #0008; backdrop-filter: blur(9px); text-align: left; overflow: auto; }
.comments-panel header { position: sticky; top: 0; z-index: 2; height: 42px; padding: 0 12px; background: #f7f7f7dd; border-bottom: 1px solid #ccc9; color: #182039; backdrop-filter: blur(9px); }
.comments-panel header button { border: 0; background: transparent; font-size: 22px; }
.comment { display: grid; grid-template-columns: 29px 1fr; gap: 8px; padding: 11px; border-bottom: 1px solid #eee; font-size: 10px; }
.comment .avatar { width: 29px; height: 29px; border-radius: 50%; display: grid; place-items: center; background: #f0d8e6; }
.comment b,.comment span,.comment small { display: block; }.comment span { margin: 3px 0; }.comment small { color: #777; }

.youtube .search { display: flex; align-items: center; padding: 0; overflow: hidden; background: #f3f3f3; }
.youtube .search input { width: 100%; height: 100%; border: 0; outline: 0; padding: 8px 11px; background: transparent; font: 12px Arial; color: #222; }
.youtube .search button { align-self: stretch; width: 38px; border: 0; border-left: 1px solid #ccc; background: #ececec; cursor: pointer; }
.youtube .search button:hover { background: #ddd; }

.youtube { position: relative; }
.browser-chrome { height: 70px; background: #dfe5ec; color: #263245; border-bottom: 1px solid #adb6c2; font: 10px Arial; }
.browser-tabs { height: 30px; display: flex; align-items: flex-end; background: #cbd3dd; padding-left: 5px; }.browser-tabs>button{width:32px;height:28px;border:0;background:transparent;font-size:18px}.browser-tab{height:27px;min-width:190px;padding:7px 10px;background:#eef2f6;border-radius:8px 8px 0 0}.browser-tab i{float:right;font-style:normal}.mini-logo{color:#f04452}.window-controls{margin-left:auto;align-self:stretch;display:flex}.window-controls button{width:38px;border:0;background:transparent;color:#283445}.window-controls button:hover{background:#b6c0cb}.window-controls button:last-child:hover{background:#e54850;color:white}
.browser-nav { height: 40px; display: flex; align-items: center; gap: 4px; padding: 5px 8px; background: #eef2f6; }.browser-nav button{width:28px;height:28px;border:0;border-radius:50%;background:transparent}.browser-nav button:hover{background:#dce2e9}.browser-nav input{flex:1;height:28px;border:0;border-radius:16px;background:white;padding:0 12px 0 6px;font:10px Consolas;color:#39465a;box-shadow:inset 0 0 0 1px #cad2dc}.address-lock{margin-left:3px}
.youtube>.site-header { height: 54px; }.youtube>.yt-body { height: calc(100% - 124px); }
.browser-loading { position: absolute; z-index: 20; left: 0; right: 0; top: 70px; bottom: 0; display: none; place-items: center; align-content: center; gap: 13px; background: white; color:#334155;font:12px Consolas }.youtube.intro .browser-loading{display:grid}.youtube.intro>.site-header,.youtube.intro>.yt-body{visibility:hidden}.browser-spinner{width:34px;height:34px;border:4px solid #d6deea;border-top-color:#1769e0;border-radius:50%;animation:browserSpin .7s linear infinite}@keyframes browserSpin{to{transform:rotate(360deg)}}

/* Mini desktop used as the fake-work screen. */
.monitor-screen > .youtube,.monitor-screen > .work { height: calc(100% - 42px); }
.work { padding-bottom: 0; overflow: hidden; background: transparent; }
.win-desktop { position: relative; width: 100%; height: 100%; overflow: hidden; background: linear-gradient(135deg,#1769aa,#6549a3); transition: background .2s; }
.win-desktop::before { content: ''; position: absolute; inset: 0; opacity: .18; background: radial-gradient(circle at 75% 28%,#fff 0 2px,transparent 3px),linear-gradient(125deg,transparent 35%,#fff4 36%,transparent 37%); background-size: 35px 35px,100% 100%; pointer-events: none; }
.desktop-icons { position: absolute; z-index: 2; left: 8px; top: 8px; bottom: 48px; display: flex; flex-direction: column; flex-wrap: wrap; gap: 5px; align-content: flex-start; }
.desktop-icons button { width: 78px; min-height: 70px; padding: 4px; border: 1px solid transparent; background: transparent; color: white; text-shadow: 1px 1px #000; font-size: 9px; }
.desktop-icons button:hover { background: #ffffff22; border-color: #ffffff66; }.desktop-icons span { display: block; font-size: 30px; margin-bottom: 3px; }
.os-window { position: absolute; z-index: 5; left: 7%; top: 5%; width: 86%; height: calc(90% - 42px); background: #fff; color: #182039; border: 1px solid #17223a; box-shadow: 8px 10px 24px #0007; overflow: hidden; }
.os-window>header { height: 32px; padding: 0 9px; display: flex; align-items: center; justify-content: space-between; background: #176f48; color: white; font: 11px Consolas; }
.os-window>header { cursor: move; touch-action: none; }
.os-window>header button { align-self: stretch; width: 38px; margin-right: -9px; border: 0; color: white; background: transparent; font-size: 18px; }.os-window>header button:hover { background: #e34a52; }
.os-window .sheet { height: calc(100% - 113px); }.os-window .typing { bottom: 0; }
.win-taskbar { position: absolute; z-index: 30; left: 0; right: 0; bottom: 0; height: 42px; display: flex; align-items: center; background: #101827f5; color: white; box-shadow: 0 -2px #fff2; }
.win-start { width: 48px; height: 42px; border: 0; background: transparent; color: #4fb2ff; font-size: 25px; }.win-start:hover,.win-start.active { background: #ffffff19; }
#taskApps { display: flex; height: 100%; gap: 2px; }.task-app { height: 100%; min-width: 112px; max-width: 155px; padding: 0 12px; border: 0; border-bottom: 3px solid #64b8ff; background: #ffffff12; color: white; font-size: 10px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }.task-app:hover { background: #ffffff22; }.task-app.active { background: #ffffff35; }.browser-pin { display: flex; align-items: center; gap: 7px; }
.tray { margin-left: auto; height:100%; padding: 3px 10px; display:flex;align-items:center;gap:3px;font: 9px Consolas; }.tray button{border:0;background:transparent;color:white}.tray span,.tray small{display:block;text-align:right}.tray small{font-size:8px;color:#cbd5e1}.notification-panel{position:absolute;z-index:45;right:0;bottom:42px;width:260px;padding:15px;background:#172135f5;color:white;box-shadow:-5px -5px 18px #0007;font:10px Arial}.notification-panel>b{font-size:13px}.notification-panel p{padding:9px;background:#ffffff12;border-left:3px solid #64b8ff}
.start-menu { position: absolute; z-index: 40; left: 0; bottom: 42px; width: 255px; background: #172135f5; color: white; box-shadow: 5px -5px 18px #0008; padding: 8px; }
.start-user { padding: 13px; margin: -8px -8px 8px; background: #ffffff12; }.start-menu>button { display: block; width: 100%; border: 0; padding: 9px; text-align: left; color: white; background: transparent; }.start-menu>button:hover { background: #ffffff22; }.start-power { border-top: 1px solid #fff2; margin-top: 8px; padding: 10px; font-size: 10px; }
#appNotes { width: 65%; height: 65%; left: 17%; top: 12%; }.os-window textarea { width: 100%; height: calc(100% - 32px); resize: none; border: 0; outline: 0; padding: 15px; background: #fffdf4; color: #252525; font: 13px/1.6 Consolas; }
.calc-window { width: 310px; height: 390px; left: 50%; top: 48%; transform: translate(-50%,-50%); background: #edf1f6; }.calc-window>header{background:#2d374b}.calc-window>input { width: calc(100% - 20px); height: 62px; margin: 10px; border: 0; background: white; padding: 8px; text-align: right; font: 25px Consolas; }.calc-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 4px; padding: 0 10px 10px; }.calc-grid button { height: 48px; border: 0; background: white; font-weight: bold; }.calc-grid button:hover { background: #dbe7f5; }
.files-window,.trash-window{width:min(720px,84%);height:min(470px,78%);left:50%;top:47%;transform:translate(-50%,-50%)}.files-window>header,.trash-window>header{background:#365d94}.file-toolbar{height:38px;padding:11px;background:#f1f4f8;border-bottom:1px solid #ccd4df;font:10px Arial}.file-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:18px}.file-grid button{min-height:86px;border:1px solid transparent;background:transparent;font-size:9px}.file-grid button:hover{border-color:#7fb4e8;background:#e7f2fc}.file-grid span{display:block;font-size:34px;margin-bottom:5px}.trash-hint{margin:15px;padding:10px;background:#fff1bd;border:1px solid #d5bd5a;font:10px Consolas}
.folder-back{border:0;background:#dbe7f5;font-weight:bold}.file-grid.gallery-mode{grid-template-columns:repeat(4,1fr);height:calc(100% - 70px);overflow:auto;align-content:start}.gallery-item{padding:5px;min-height:120px!important}.gallery-item img{display:block;width:100%;height:85px;object-fit:cover;background:#ddd;border:1px solid #adb8c8}.gallery-item small{display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-folder{grid-column:1/-1;padding:45px;text-align:center;color:#6c7890;font:11px Consolas}.gallery-viewer{position:absolute;z-index:20;inset:32px 0 0;background:#07101eee;display:grid;place-items:center;padding:30px}.gallery-viewer img{max-width:92%;max-height:85%;object-fit:contain;box-shadow:0 8px 30px #000}.gallery-viewer>button{position:absolute;right:12px;top:12px;width:38px;height:38px;border:0;background:#e54850;color:white;font-size:22px}.gallery-viewer>span{position:absolute;bottom:8px;color:white;font:10px Consolas}
.info-window,.settings-window,.cheats-window { width: min(620px,82%); height: min(430px,75%); left: 50%; top: 47%; transform: translate(-50%,-50%); }.info-window>header{background:#365d94}.info-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; padding: 20px; }.info-grid article { padding: 15px 8px; text-align: center; background: #edf3fc; border: 1px solid #c4d2e6; }.info-grid article span,.info-grid article b,.info-grid article small { display: block; }.info-grid article span{font-size:22px}.info-grid article b{font-size:23px;margin:5px}.info-grid article small{font-size:9px}.temp-save { margin: 0 20px; padding: 10px; background: #fff3bd; border: 1px solid #d2b955; font: 10px Consolas; text-align:center; }
.settings-window,.cheats-window { height: min(390px,72%); padding-bottom: 15px; }.settings-window>header{background:#475569}.settings-window h2 { padding: 0 18px; }.switch-row,.wallpaper-row { display: flex; align-items: center; margin: 10px 18px; padding: 12px; background: #f1f4f8; border: 1px solid #d4dae3; }.switch-row>span,.wallpaper-row>span{flex:1}.switch-row input{display:none}.switch-row i{position:relative;width:42px;height:22px;border-radius:20px;background:#9aa4b2}.switch-row i:after{content:'';position:absolute;width:18px;height:18px;left:2px;top:2px;border-radius:50%;background:white;transition:.15s}.switch-row input:checked+i{background:#2078d1}.switch-row input:checked+i:after{left:22px}.wallpaper-row button{width:30px;height:30px;margin-left:6px;border:2px solid white;border-radius:50%;box-shadow:0 0 0 1px #777}.wallpaper-row button[data-wallpaper="#1769aa"]{background:#1769aa}.wallpaper-row button[data-wallpaper="#6549a3"]{background:#6549a3}.wallpaper-row button[data-wallpaper="#176b58"]{background:#176b58}.wallpaper-row button[data-wallpaper="#7a3d52"]{background:#7a3d52}
.cheats-window { background:#111b22;color:#aaf7be }.cheats-window>header{background:#0d1217;color:#7aff9b}.cheat-title{text-align:center;padding:17px;font:900 18px Consolas;text-shadow:0 0 8px #2cff62}.cheats-window .switch-row{background:#16262b;border-color:#2d5940}.danger-row{color:#ffcb6b}.cheat-buttons{display:flex;gap:8px;padding:10px 18px}.cheat-buttons button{flex:1;padding:10px;border:1px solid #48b86a;background:#163a26;color:#9dffb7;font:10px Consolas}.cheats-window>small{display:block;padding:4px 18px;color:#70977c}
.reduce-motion * { animation-duration: .001ms !important; transition-duration: .001ms !important; }
@media(max-width:700px){.os-window{left:2%;width:96%}.info-grid{grid-template-columns:repeat(2,1fr);padding:8px}.desktop-icons button{width:65px}.panic{z-index:45}.task-app{min-width:65px}.calc-window{width:280px}.info-window,.settings-window,.cheats-window{width:94%}}

.mode-dialog { width: min(700px,94vw); padding: 30px; border: 3px solid #0c1424; background: #eef3ff; color: #18213a; box-shadow: 14px 16px #0007; }
.mode-dialog h2 { margin: 6px 0 22px; font-size: 34px; }.mode-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.mode-cards button { min-height: 210px; border: 3px solid #18213a; background: white; color: #18213a; box-shadow: 6px 7px #18213a; transition: .12s; }.mode-cards button:hover { transform: translate(3px,3px); box-shadow: 3px 4px #18213a; }.mode-cards button:first-child { background: linear-gradient(145deg,#ffe8f4,#dce4ff); }.mode-cards button:last-child { background: linear-gradient(145deg,#e5edf2,#c8d5dd); }
.mode-cards span,.mode-cards b,.mode-cards small { display: block; }.mode-cards span { font-size: 70px; }.mode-cards b { margin: 8px; font-size: 26px; }.mode-cards small { font-size: 11px; }
.short-video .real-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; background: #050505; display: none; }.short-video .real-media.ready { display: block; }
.youtube.real-mode header b i { filter: grayscale(1); }.youtube.real-mode .video-tag { color: #dbefff; }
@media(max-width:600px){.mode-cards{grid-template-columns:1fr}.mode-cards button{min-height:140px}.mode-cards span{font-size:45px}.mode-dialog{padding:18px}}

/* Main menu and acknowledgements. */
#menu { padding: 35px; }
.menu-layout { position: relative; z-index: 2; width: min(1100px,96vw); display: grid; grid-template-columns: 1.25fr .75fr; align-items: center; gap: clamp(35px,7vw,95px); text-align: left; }
.menu-brand { text-align: center; }.menu-brand .warning { display: inline-block; }.menu-brand .logo-icon { margin-top: 28px; }.menu-brand h1 { margin: 18px 0 26px; font-size: clamp(64px,8vw,118px); }.menu-brand .tagline { margin: 0; }
.main-menu { padding: 20px; border-left: 2px solid #ffffff1f; }.menu-label { margin: 0 0 12px; color: #66d9ff; font: 10px Consolas; letter-spacing: 3px; }
.menu-option { position: relative; width: 100%; min-height: 78px; margin: 9px 0; display: flex; align-items: center; gap: 14px; border: 2px solid #ffffff28; background: #ffffff0d; color: white; text-align: left; transition: .14s; }
.menu-option>span { width: 52px; font-size: 25px; text-align: center; color: #ffda43; }.menu-option b,.menu-option small { display: block; }.menu-option b { font-size: 15px; }.menu-option small { margin-top: 4px; color: #aab9d5; font-size: 10px; }
.menu-option:hover,.menu-option:focus { transform: translateX(8px); border-color: #65d9ff; background: #ffffff18; outline: none; }.menu-option:hover::before { content: '▶'; position: absolute; left: -23px; color: #ffda43; }
.menu-option.primary-option { border-color: #ef3d51; background: linear-gradient(90deg,#ef3d5133,transparent); }.menu-option.primary-option>span { color: #ff6575; }
.menu-status { display: flex; justify-content: space-between; gap: 12px; margin-top: 18px; padding-top: 15px; border-top: 1px solid #ffffff22; color: #94a6c9; font: 9px Consolas; }.menu-status b { color: #ffda43; }
.menu-footer { position: absolute; z-index: 2; left: 0; right: 0; bottom: 15px; color: #607495; font: 8px Consolas; letter-spacing: 2px; }

.thanks-window { position: relative; z-index: 2; width: min(760px,94vw); max-height: 92vh; overflow: auto; background: #eef3ff; color: #18213a; border: 3px solid #101a2d; box-shadow: 16px 18px #0008; text-align: left; }
.thanks-window>header { display: flex; align-items: center; gap: 13px; padding: 13px 18px; background: #263a67; color: white; }.thanks-window>header>span { font-size: 30px; color: #ff6978; }.thanks-window>header small,.thanks-window>header b { display: block; }.thanks-window>header small { color: #9fb3da; font: 8px Consolas; letter-spacing: 2px; }.thanks-window>header b { margin-top: 3px; font: 13px Consolas; }
.thanks-body { padding: clamp(22px,5vw,48px); text-align: center; }.thanks-kicker { color: #ef3d51; font: 900 11px Consolas; letter-spacing: 3px; }.thanks-body h2 { margin: 12px 0 24px; font-size: clamp(26px,4vw,40px); line-height: 1.05; }.thanks-body>p { max-width: 620px; margin: 16px auto; color: #3c4962; line-height: 1.55; }
.future-box { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin: 26px 0; padding: 17px; background: #dce7fa; border: 1px solid #aebfda; }.future-box>b { grid-column: 1/-1; margin-bottom: 6px; font: 11px Consolas; }.future-box span { padding: 8px; background: white; border: 1px solid #c2cde0; font-size: 10px; }.signature { font-weight: bold; }.signature small { font-weight: normal; color: #7887a2; }
.age-warning { background: #ffcf3d; color: #261500; }.age-note { padding: 10px 14px; background: #ffe1e5; border: 1px solid #ed8996; color: #9d2635 !important; font: 10px Consolas; }.future-note { margin: 24px auto !important; padding: 14px 18px; background: #dce7fa; border: 1px solid #aebfda; font: 11px Consolas; color: #34435d !important; }
@media(max-width:760px){#menu{padding:15px}.menu-layout{grid-template-columns:1fr;gap:18px}.menu-brand .logo-icon{display:none}.menu-brand h1{font-size:14vw;margin:12px}.menu-brand .tagline{font-size:12px}.main-menu{border-left:0;border-top:1px solid #ffffff22;padding:10px}.menu-option{min-height:60px}.menu-status{margin-top:8px}.future-box{grid-template-columns:repeat(2,1fr)}}

.age-gate { position: relative; z-index: 2; width: min(560px,92vw); padding: 34px; border: 3px solid #111a2d; background: #eef3ff; color: #18213a; box-shadow: 14px 16px #0008; text-align: center; }.age-symbol { width: 92px; height: 92px; margin: 0 auto 16px; display: grid; place-items: center; border: 8px solid #ef3d51; border-radius: 50%; color: #ef3d51; font: 900 30px Arial; }.age-gate h2 { margin: 8px 0 18px; font-size: clamp(28px,5vw,43px); line-height: 1; }.age-gate>p:not(.kicker) { color: #52617c; }.age-gate>strong { display: block; margin: 22px auto; max-width: 430px; }.age-actions { display: flex; justify-content: center; align-items: center; gap: 18px; }.age-actions .ghost { color: #34435d; margin: 0; }

/* Preserve the complete image inside the gallery viewer. */
.gallery-viewer { display:flex; align-items:center; justify-content:center; padding:58px 28px 42px; overflow:auto; }
.gallery-viewer img { display:block; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; }
.gallery-viewer>button { z-index:2; }
.gallery-viewer>span { left:15px; right:15px; bottom:10px; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* Expediente, eventos e aplicativos extras */
.hud{flex-wrap:wrap;gap:6px}.suspicion-hud{display:flex!important;align-items:center;gap:5px}.suspicion-hud>i{width:86px;height:8px;background:#293448;border:1px solid #8c99ad}.suspicion-hud em{display:block;height:100%;background:linear-gradient(90deg,#47d47a,#ffd338,#ff4055)}.suspicion-hud b{color:#ffd338}.shift-hud{color:#9bdcff}
.coworker-tip{position:absolute;right:18px;top:85px;z-index:40;width:250px;display:flex;gap:10px;padding:12px;background:#142137ee;border:2px solid #60c6ff;color:#fff;box-shadow:5px 5px #080d15}.coworker-tip>span{font-size:30px}.coworker-tip p{margin:4px 0;font-weight:bold}
.event-prompt{position:absolute;inset:0;z-index:80;display:grid;place-items:center;background:#070c14bb}.event-card{width:min(430px,80vw);padding:24px;text-align:center;background:#eef4ff;border:4px solid #172033;color:#172033;box-shadow:10px 10px #080d16}.event-card>span{font-size:48px}.event-card small{display:block;letter-spacing:2px}.event-card>div{display:flex;justify-content:center;gap:10px}.event-card .ghost{color:#172033;border-color:#172033}
.meeting-overlay{position:absolute;z-index:90;left:50%;top:50%;transform:translate(-50%,-50%);width:min(620px,82vw);background:#172033;border:4px solid #83a7da;color:#fff;box-shadow:0 0 0 100vmax #03070cbb}.meeting-overlay header{padding:12px;background:#273958;display:flex;justify-content:space-between}.meeting-people{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px}.meeting-people article{height:95px;background:#0f1828;display:grid;place-items:center;align-content:center}.meeting-people span{font-size:38px}.meeting-overlay p{text-align:center}.meeting-overlay>i{display:block;margin:12px;height:8px;background:#080e18}.meeting-overlay em{display:block;height:100%;background:#47d47a}
.mail-window,.store-window,.games-window{left:6%;top:5%;width:88%;height:calc(90% - 42px);z-index:12;transform:none}.mail-layout{display:grid;grid-template-columns:150px 1fr;height:calc(100% - 34px);background:#f7f9fc;color:#172033}.mail-layout aside{background:#dfe8f5;padding:18px;display:flex;flex-direction:column;gap:18px}.mail-layout main{padding:22px;overflow:auto}.mail-answers{display:grid;gap:8px}.mail-answers button,.mail-ignore{padding:10px;text-align:left;border:1px solid #9aa8bb;background:#fff}.mail-ignore{margin-top:12px;background:#ffe0e4}
.store-window{background:#f3f6fb;color:#172033}.store-top{display:flex;justify-content:space-between;padding:12px 18px;background:#e1e9f5}.store-top small{display:block}.store-tabs{display:flex;padding:8px 12px 0}.store-tabs button{padding:8px;border:0}.store-tabs .active{background:#2670bd;color:#fff}.store-grid{box-sizing:border-box;padding:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:10px;overflow-y:auto;overflow-x:hidden;height:calc(100% - 119px)}.store-item{min-width:0;background:#fff;border:1px solid #aab5c5;padding:8px;display:flex;flex-direction:column;gap:6px}.store-preview{width:100%;height:100px;flex:none;background-color:#d9e1ed;background-repeat:no-repeat!important;background-size:cover!important;background-position:center!important;border:1px solid #aeb9ca}.store-item b,.store-item small{overflow:hidden;text-overflow:ellipsis}.store-item button{padding:7px;background:#1769aa;color:#fff;border:0}.store-item button:disabled{background:#679578}
.game-hub{height:calc(100% - 34px);padding:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:#17243a}.game-hub button{background:#293e60;border:2px solid #6181ad;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.game-hub span{font-size:50px}.minigame-area{height:calc(100% - 34px);padding:12px;background:#18243a;color:#fff}.minigame-bar{display:flex;justify-content:space-between}.mine-grid{display:grid;grid-template-columns:repeat(5,44px);gap:4px;justify-content:center;margin-top:18px}.mine-grid button{width:44px;height:44px;background:#56708f;color:#fff}.mine-grid .revealed{background:#e0e6ef;color:#172033}.mine-grid .mine{background:#d64b5c}.snake-canvas{display:block;margin:18px auto;background:#09111d;border:3px solid #607fa9;max-width:100%}.solitaire-board{text-align:center}.card-pile{width:100px;height:140px;margin:24px auto;background:#fff;color:#172033;border:5px solid #ccd7e5;border-radius:8px;font-size:45px;display:grid;place-items:center}.solitaire-found{font-size:28px;margin:12px}
.shift-summary{width:min(700px,90vw);padding:34px;text-align:center;background:#eaf1fd;border:5px solid #172033;color:#172033;box-shadow:12px 12px #070d17}.summary-stamp{display:inline-block;padding:8px 16px;background:#42b96f;color:#fff;font-weight:bold}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:24px 0}.summary-grid article{padding:14px;background:#fff;border:2px solid #acbbd1;display:flex;flex-direction:column}.summary-grid article span{font-size:28px}.salary-note{padding:12px;background:#d9f5e3;font-weight:bold}
.win-desktop.theme-neon{filter:saturate(1.4)}.theme-pink .os-window>header{background:#a62c72!important}.theme-midnight .os-window>header{background:#111827!important}.cursor-crosshair,.cursor-crosshair *{cursor:crosshair!important}.cursor-pointer,.cursor-pointer *{cursor:pointer!important}
.gallery-viewer{overflow:hidden}.gallery-viewer img{transform-origin:center;transition:transform .12s;will-change:transform}
.gallery-viewer img{cursor:grab;touch-action:none;user-select:none}.gallery-viewer img.dragging{cursor:grabbing;transition:none}
.event-visual-body{text-align:center;padding:16px 22px}.event-visual-body h2{margin:8px 0}.system-event-icon{font-size:72px;margin:20px auto 8px;animation:systemPulse 1s infinite}.ringing{animation:ringing .35s infinite alternate}.event-update #meetingProgress{background:#4a8cff}.event-call #meetingProgress{background:#53d17f}.event-internet #meetingProgress{background:#5ec8ff}@keyframes systemPulse{50%{transform:rotate(18deg) scale(1.08)}}@keyframes ringing{to{transform:rotate(12deg) scale(1.08)}}
.cheats-window{position:absolute}.cheats-locked>header{position:relative;z-index:2}.cheat-lock{position:absolute;z-index:20;inset:32px 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;background:linear-gradient(145deg,#101827,#222f49);color:#fff;text-align:center}.cheat-lock-icon{font-size:50px}.cheat-lock>b{font:900 18px Consolas;letter-spacing:2px;color:#ffce3a}.cheat-lock p{margin:8px 0 18px;color:#bac7db}.cheat-lock input{width:min(310px,80%);padding:11px;border:2px solid #61718a;background:#0b111d;color:#fff;text-align:center;font:16px Consolas;outline:none}.cheat-lock input:focus{border-color:#58c7ff}.cheat-lock button{margin:10px 0;padding:10px 22px;border:0;background:#e54759;color:#fff;font-weight:bold}.cheat-lock small{min-height:17px;color:#9faec4}.cheat-lock.wrong{animation:lockShake .28s}@keyframes lockShake{25%{transform:translateX(-8px)}50%{transform:translateX(8px)}75%{transform:translateX(-4px)}}
@media(max-width:700px){.summary-grid{grid-template-columns:1fr 1fr}.store-grid{grid-template-columns:1fr 1fr}.mail-layout{grid-template-columns:105px 1fr}}
