/* Full viewport monitor and classic arcade applications. */
/* Arena maximizes inside the Macintosh display; the enclosure stays visible. */
body.arena-mode #macScreen #window-arena{max-width:100%!important;max-height:100%!important;box-shadow:none!important}
.arena-launch-toolbar{display:flex;align-items:center;gap:6px;flex:none}
.arena-launch-tools{display:flex;align-items:center;gap:6px;margin-left:auto}
#window-arena .arena-launch-tools .button{width:auto;min-width:0;min-height:30px;padding:4px 9px;font-size:11px;white-space:nowrap}
#window-arena #nekoArenaDesktopBtn{min-width:0!important}
#window-arena .arena-difficulty-wrap{display:flex;align-items:center;justify-content:space-between;gap:7px;border:0;background:#fff;padding:0 0 7px;font-size:11px}
#window-arena .arena-difficulty-select{width:86px;height:28px;min-height:0;padding:2px 4px;font-size:11px}
.arena-more{position:relative}
.arena-more>summary{cursor:pointer;display:flex;align-items:center;min-height:30px;border:1px solid #000;box-shadow:1px 1px #000;border-radius:4px;background:#fff;padding:4px 9px;font-size:11px;list-style:none}
.arena-more>summary::after{content:' ▾'}.arena-more>summary:focus-visible{outline:2px dotted #000;outline-offset:2px}
.arena-more-actions{position:absolute;top:calc(100% + 6px);right:0;width:224px;max-height:min(520px,calc(100dvh - 240px));overflow:auto;display:grid;gap:5px;padding:9px;background:#fff;border:1px solid #000;box-shadow:2px 2px #000;z-index:30}
#window-arena .arena-more-actions .button{text-align:left;width:100%;min-height:28px}
#window-arena .arena-stats-row{gap:5px 18px;flex-wrap:wrap;border-top:1px solid #000;margin-top:4px;padding-top:7px}
#window-arena .arena-stats-row .arena-pill{min-width:0;border:0!important;padding:2px 0;font:10px monospace}
.arena-focus-bar{display:none}
body.arena-mode .mac-menubar,body.arena-mode #macDropdown{display:none!important}
body.arena-mode #macScreen .desktop{inset:0!important}
body.arena-playing #window-arena>.titlebar,body.arena-playing .arena-launch-toolbar,body.arena-playing .arena-header-row,body.arena-playing .arena-session-strip,body.arena-playing .arena-bottom-row{display:none!important}
body.arena-playing #window-arena .arena-body{padding:3px!important;gap:3px}
body.arena-playing #window-arena .arena-focus-bar{display:flex;align-items:center;gap:10px;min-height:31px;flex:none;padding:2px 3px;border-bottom:1px solid #000;background:#fff;font:11px monospace}
#window-arena .arena-focus-bar .button{width:auto;min-width:0;min-height:26px;padding:3px 10px;font-size:11px;white-space:nowrap}
.arena-focus-stats{display:flex;gap:18px;margin-left:auto;font:11px monospace;white-space:nowrap}
#arenaFocusStatus{font-size:10px;white-space:nowrap}
@media(max-width:600px){body.arena-playing #window-arena .arena-focus-bar{gap:6px;flex-wrap:wrap}.arena-focus-stats{gap:8px;font-size:10px}#arenaFocusStatus{display:none}#window-arena .arena-focus-bar .button{font-size:10px;padding:3px 7px}#window-arena .arena-focus-bar #nekoArenaReplayBtn{margin-left:auto}}
.arena-play-options{display:flex;gap:6px;min-width:0}
#window-arena .arena-play-option{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:30px;padding:4px 10px;border:1px solid #000!important;border-radius:4px!important;background:#fff!important;color:#000!important;box-shadow:1px 1px #000;cursor:pointer;white-space:nowrap}
.arena-play-option span{font-size:11px;font-weight:bold}.arena-play-option small{font:9px monospace}
#window-arena .arena-play-option:hover{outline:1px solid #000}
@media(max-width:600px){#window-arena .arena-play-option{padding:4px 7px;gap:4px}.arena-play-option span{font-size:10px}.arena-play-option small{font-size:8px}#window-arena .arena-launch-tools .button,.arena-more>summary{font-size:10px;padding:4px 7px}.arena-launch-toolbar,.arena-launch-tools,.arena-play-options{gap:5px}}
@media(max-width:360px){.arena-play-option small{display:none}}
.arena-title img{width:17px;height:17px;object-fit:contain;image-rendering:pixelated;vertical-align:middle}
.arena-session-strip{display:flex;justify-content:space-between;gap:12px;font:10px monospace;padding:6px 8px;background:#f0f0f0;border:1px solid #000;flex-wrap:wrap}
.ticket-banner{display:flex;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid #000;margin-bottom:12px}
.ticket-banner>img{width:52px;height:52px;object-fit:contain;image-rendering:pixelated}
.ticket-banner small{display:block;font:9px monospace;letter-spacing:1px}
.ticket-banner strong{display:block;font-size:30px;line-height:1.2;margin-top:6px}
.ticket-banner strong span{font-size:14px}
.preview-badge{margin-left:auto;padding:4px;border:1px solid #000;font:9px monospace;text-align:center}
.ticket-confirm{width:100%;margin-top:4px;min-height:36px}
.ticket-unavailable{font-size:10px!important;text-align:center;color:#555}
.economy-details{margin:14px 0;border:1px solid #000;padding:10px}
.economy-details summary{cursor:pointer;font-weight:bold;font-size:11px}
.economy-split{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.economy-split div{display:flex;flex-direction:column;gap:3px;font-size:10px}
.economy-split b{font-size:24px}.economy-split small{font:10px monospace}
.stage-preview-label{display:flex;justify-content:space-between;margin:15px 0 8px;font-size:12px}
#arenaStagePreview{width:100%;accent-color:#000}
.points-preview{display:flex;gap:12px;align-items:center;margin:8px 0;font-size:11px}.points-preview strong{font-size:26px}
.pool-formula{padding:10px;border:3px double #000;font-family:monospace}
body .computer-monitor{inset:0;border-radius:0}
body.computer-page{background:#ded3b8!important}
/* White fills and black outlines retain icon detail while removing all color. */
body.computer-page img,body.computer-page .desktop-icon img,body.computer-page .arena-neko,body.computer-page #oneko{filter:url('#neko-monochrome')!important}
body.computer-page #monitorHome img{filter:drop-shadow(0 1px 1px #897e6470)!important}
body .mac-menubar .maci-brand{display:flex;align-items:center;justify-content:center;gap:6px;min-width:70px;margin-left:0;padding:0 5px 0 10px;letter-spacing:.5px}
body .mac-menubar .maci-brand img{display:block;width:21px;height:21px;object-fit:contain;filter:none!important;image-rendering:pixelated}
body .mac-menubar .maci-brand span{font-size:12px}
@media(max-width:900px){body .mac-menubar .maci-brand{margin-left:auto}}
@media(max-width:600px){body .mac-menubar .maci-brand{min-width:58px;padding:0 4px;gap:4px}body .mac-menubar .maci-brand span{font-size:10px}body .mac-menubar .maci-brand img{width:19px;height:19px}}
body.computer-page img[src="assets/x.png"],body.computer-page img[src="assets/clippyinfo.png"]{filter:grayscale(1) invert(1)!important}
/* The source PNG has a stray vertical strip at its left edge. Keep the X intact. */
body.computer-page img[src="assets/x.png"]{clip-path:inset(0 0 0 2%)}
body.computer-page .desktop-icon img[src="assets/dark-castle.svg"]{filter:none!important}
#window-darkcastle .dark-castle-body{display:flex;flex-direction:column;flex:1;min-height:0;max-height:none!important;height:auto!important;padding:8px!important;gap:7px;overflow:auto}
.dark-castle-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:7px;flex:none}
.dark-castle-toolbar>span{margin-left:auto;font:10px monospace}
.dark-castle-display{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:200px;border:1px solid #000;background:#fff;overflow:hidden}
.dark-castle-viewport{position:relative;flex:none}
#darkCastleFrame{position:absolute;inset:0;width:544px;height:416px;border:0;background:#fff;transform-origin:top left}
.dark-castle-loading{position:absolute;inset:0;display:grid;place-items:center;background:#fff;font:12px monospace;text-align:center}
#window-darkcastle .dark-castle-guide{margin:0;font:11px/1.4 var(--mac-font)}
.dark-castle-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font:10px/1.4 var(--mac-font)}
.dark-castle-footer a{color:#000}
.dark-castle-help{flex:none;border-top:1px solid #000;padding-top:5px;font-size:10px}.dark-castle-help summary{cursor:pointer}.dark-castle-help p{margin:6px 0!important;font-size:11px!important}
@media(max-width:600px){.dark-castle-toolbar .mac-action{padding:4px 7px;font-size:10px}.dark-castle-toolbar>span{display:none}.dark-castle-toolbar>a{margin-left:auto}.dark-castle-display{min-height:190px}}
#macScreen #window-arena{display:flex;flex-direction:column}
#window-arena .arena-body{height:auto!important;max-height:none!important;flex:1;min-height:0!important;overflow:hidden;gap:5px;padding:5px!important}
#window-arena .arena-area{flex:1;min-height:100px!important;touch-action:none;border:1px solid #000!important}
#window-arena .arena-header-row{gap:7px}
#window-arena .arena-actions-top{gap:5px;flex-wrap:wrap}
#window-arena .arena-actions-top .button{width:auto;min-width:52px;padding:0 7px;font-size:10px}
#window-arena .arena-pill{background:#fff!important;color:#000!important;border:1px solid #000!important;box-shadow:none!important;font-size:11px;padding:3px 6px}
#window-arena .arena-bottom-row{flex:none;gap:5px}
#window-arena .arena-help{font-size:10px;line-height:1.4}
#window-arena .arena-status{font-size:11px}
.arena-earn-backdrop{position:absolute;inset:24px 0 0;background:#0007;z-index:100;display:flex;align-items:center;justify-content:center;padding:10px}
.arena-earn-card{width:min(540px,100%);max-height:100%;overflow:auto;background:#fff;border:3px double #000;padding:16px;box-shadow:2px 2px #000;font-size:12px;line-height:1.5}
.earn-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}
.earn-heading h2{font-size:16px;margin:0}
.earn-heading .mac-action{padding:1px 8px;min-height:23px}
.arena-earn-card .status-card{margin:12px 0;gap:10px}
.arena-earn-card .notice{margin:12px 0}
.arena-earn-card .mac-action{font-size:10px}
.arena-earn-card p{font-size:11px}
.arena-earn-card #walletAddress{word-break:break-all}
#macScreen #oneko{display:block!important;visibility:visible!important;opacity:1!important;pointer-events:none!important}
#macScreen .classic-game{display:flex;flex-direction:column}
#window-treasury .treasury-body{max-height:none!important}
.treasury-heading{display:flex;align-items:center;gap:13px}
.treasury-heading>img{width:44px;height:44px;image-rendering:pixelated}
/* This asset is already black and white; retain its fine vault details. */
body.computer-page .desktop-icon[data-window="treasury"] img,body.computer-page .treasury-heading>img{filter:none!important}
.treasury-heading h2{margin:4px 0 0}
.treasury-badge{margin-left:auto;border:1px solid #000;padding:4px 6px;font:9px monospace;white-space:nowrap}
.treasury-balances{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #000;margin:20px 0}
.treasury-balances>div{display:flex;flex-direction:column;gap:8px;padding:13px;border-right:1px solid #000;font-size:11px}
.treasury-balances>div:last-child{border-right:0}
.treasury-balances strong{font:28px monospace}
.treasury-balances small{font:9px/1.5 monospace}
.treasury-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:20px 0 10px}
.treasury-section-heading h3{margin:0}.treasury-section-heading>span{font:10px monospace}
.treasury-allocation{display:grid;grid-template-columns:1fr;height:29px;border:1px solid #000;font:11px monospace}
.treasury-allocation span{display:flex;align-items:center;justify-content:center;min-width:0}
.treasury-allocation span:first-child{background:#000;color:#fff}
.treasury-allocation span:nth-child(2){border-right:1px solid #000;background:repeating-linear-gradient(45deg,#ddd 0 1px,#fff 1px 3px)}
.treasury-ledger{margin:8px 0}.treasury-ledger>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #bbb;font-size:11px}
.treasury-ledger dd{margin:0;font-family:monospace;text-align:right}.treasury-ledger small{display:inline-block;width:33px;margin-left:8px}
.treasury-record{padding:13px;border:3px double #000;margin:16px 0}.treasury-record p{margin:5px 0 0}
@media(max-width:600px){.treasury-heading{gap:8px}.treasury-heading>img{width:32px;height:32px}.treasury-heading .eyebrow{font-size:8px}.treasury-badge{font-size:8px;padding:3px}.treasury-balances>div{font-size:10px;padding:8px}.treasury-balances small{font-size:8px}.treasury-ledger small{display:block;width:auto}.treasury-allocation{font-size:9px}}
.classic-game-body{min-height:0;flex:1;display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px;overflow:auto;background:#fff}
.classic-game-toolbar{display:flex;gap:10px;align-items:center;width:100%;flex-wrap:wrap}
.game-score{margin-left:auto;font-size:11px;font-weight:700}
.classic-game canvas{display:block;max-width:100%;width:560px;max-height:calc(100% - 120px);flex:1;min-height:120px;object-fit:contain;image-rendering:pixelated;border:1px solid #000;touch-action:none;background:#fff;outline-offset:2px}
.classic-game .game-status{font-size:12px;font-weight:bold;margin:0;text-align:center;min-height:16px}
.classic-game .game-instructions{font-size:10px;line-height:1.4;text-align:center;margin:0;max-width:480px}
.snake-controls{display:flex;gap:8px}
.snake-controls button{height:30px;width:36px;background:#fff;border:1px solid #000;box-shadow:1px 1px #000;font-size:17px;touch-action:manipulation}
.snake-controls button:active{background:#000;color:#fff}
@media(max-width:600px){
  #window-arena .arena-header-row{flex-direction:column;gap:5px}
  #window-arena .arena-stats-row{gap:3px;flex-wrap:wrap}
  #window-arena .arena-pill{font-size:9px;padding:2px 4px}
  #window-arena .arena-actions-top .button{font-size:9px;min-width:39px;padding:0 4px}
  .arena-earn-card{padding:10px}
  .arena-earn-card .status-card{font-size:9px}
  .arena-earn-backdrop{padding:6px}
  .classic-game-body{padding:8px;gap:8px}
  .classic-game-toolbar{gap:7px}
  .classic-game-toolbar .mac-action{font-size:10px;padding:4px 7px}
  .classic-game canvas{flex:0 1 auto;width:100%;height:auto;min-height:0;max-height:none}
}
