/* Consistent geometry and interaction without changing the desktop theme. */
.pipe-cursor{left:0;top:0;visibility:hidden;will-change:transform;z-index:2147483647!important;pointer-events:none}
.smoke-puff{z-index:2147483646!important;pointer-events:none}
.pipe-cursor.cursor-visible{visibility:visible}
.desktop .icons{max-width:100vw;max-height:calc(100dvh - 80px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
.desktop-icon{flex-shrink:0;border-radius:4px;padding:5px 3px}
.desktop-icon b{line-height:1.25;font-weight:700}
.desktop-icon:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #f8d94e;outline-offset:2px}
.window,.amp,.task-manager{max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 88px)!important;box-shadow:0 12px 32px #0008!important}
.window:not(.market-browser):not(.photo-window):not(.large){overflow:auto}
.titlebar,.tm-header,.amp header{touch-action:none;user-select:none;flex-shrink:0}
.titlebar>span,.tm-header>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.titlebar button,.tm-header button{flex-shrink:0}
.market-browser{height:min(650px,calc(100dvh - 110px))!important;min-height:280px;overflow:hidden!important}
.live-chart-shell{display:flex;flex-direction:column;padding-top:27px;min-height:0}
.live-chart-shell iframe{flex:1;min-height:0;height:auto}
.chart-fallback{display:block!important;position:static;flex-shrink:0;padding:7px 10px;font-size:12px;background:#182333;color:#b7d5ff}
.browser-nav,.browser-tabs,.bookmark-bar{flex-shrink:0}
.photo-window{height:min(610px,calc(100dvh - 110px))!important}
.photo-viewer{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:0}
.photo-viewer img{max-height:calc(100% - 35px);width:auto;object-fit:contain}
.photo-viewer p{max-width:95%;overflow-wrap:anywhere}
.photo-grid img{content-visibility:auto}
.taskbar{z-index:20000!important;gap:6px}
.taskbar #start{white-space:nowrap;padding:0 12px;flex-shrink:0}
#tasks{display:flex;align-items:center;gap:4px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.taskbar #tasks button{border:1px solid #84b6f5;border-radius:3px;background:linear-gradient(#377ed5,#1553a6);padding:6px 10px;max-width:160px;min-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;text-align:left}
.taskbar #tasks button[aria-pressed=true]{background:#073779;box-shadow:inset 1px 1px 3px #001e50}
.tray{flex-shrink:0;white-space:nowrap;padding:0 8px}
.start-menu{z-index:20001!important;max-height:calc(100dvh - 60px);overflow:auto}
.popup{z-index:25000!important;max-height:calc(100dvh - 80px);overflow:auto}
.boot{z-index:40000!important;pointer-events:auto;padding:20px}
.desktop.dragging iframe{pointer-events:none}
.desktop.dragging{user-select:none}
.is-background *{animation-play-state:paused!important}
@media(max-width:700px){
  .desktop .icons{grid-template-rows:repeat(4,108px);grid-auto-columns:92px;gap:5px;padding:12px;max-width:100%;width:max-content}
  .desktop-icon{width:90px;height:103px;font-size:11px}
  .window.large{height:calc(100dvh - 118px)!important}
  .explorer{height:calc(100% - 66px);grid-template-columns:1fr;overflow:auto}
  .explorer aside{display:grid;grid-template-columns:1fr 1fr;padding:8px;gap:2px}
  .explorer aside>b{grid-column:1/-1}.explorer aside button{padding:6px;font-size:13px}
  .files{overflow:visible;padding:10px;gap:8px}
  .market-browser{width:94vw;height:calc(100dvh - 118px)!important}
  .window,.market-browser,.photo-window,.amp,.task-manager{left:3%!important;right:auto!important}
  .wallet-popup{max-height:calc(100dvh - 170px)}
  .taskbar #start{font-size:14px;padding:0 8px}.start-logo{width:28px;height:28px}.tray{font-size:11px}
  .stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stats div{padding:6px}.stats b{font-size:11px}
  .bank-brand b{font-size:16px}.bank-body{padding:12px}
}
@media(prefers-reduced-motion:reduce){.boot-logo img,.ticker span,.coin,.cta,.live-badge i{animation:none!important}.smoke-puff{display:none}.rug-particle{animation-duration:1s!important}}
