
*{box-sizing:border-box}
html,body{
  width:100%;
  height:100%;
  margin:0;
  overflow:hidden;
  font-family:"MS Sans Serif", Tahoma, Arial, sans-serif;
  font-size:11px;
  color:#000;
  cursor:url('assets/cursor-win98.png') 1 1, default;
}
button,a,input,iframe{font:inherit;cursor:url('assets/cursor-win98.png') 1 1, pointer}
body{background:#008080}
.desktop-bg{position:fixed;inset:0;background:#008080}
.boot-screen{
  position:fixed;inset:0;display:flex;align-items:center;justify-content:center;
  background:#000;z-index:2000;color:#c0c0c0;font-family:"Courier New", monospace;
}
.boot-hidden{display:none}
.boot-box{width:360px;text-align:center}
.boot-title{font-size:22px;color:#fff;margin-bottom:14px}
.boot-bar{height:18px;border:2px solid #7f7f7f;background:#111;padding:2px}
.boot-bar span{display:block;height:100%;width:0;background:#00a2ff;transition:width 2.2s linear}
.boot-sub{margin-top:12px;font-size:14px;color:#b5b5b5}

.desktop{position:relative;height:calc(100% - 28px)}
.desktop-icons{
  position:absolute;left:8px;top:10px;width:92px;
  display:flex;flex-direction:column;gap:7px
}
.desktop-icon{
  width:88px;min-height:58px;border:none;background:transparent;
  display:flex;flex-direction:column;align-items:center;gap:4px;padding:2px;
  color:#fff;text-decoration:none;transition:transform .12s ease
}
.desktop-icon:hover{transform:scale(1.04)}
.desktop-icon img{width:34px;height:34px;object-fit:contain;image-rendering:pixelated}
.desktop-icon span{text-align:center;line-height:1.05;text-shadow:1px 1px 0 rgba(0,0,0,.6)}

.corner-neko{
  position:fixed;right:14px;bottom:34px;width:44px;height:44px;pointer-events:none;z-index:4;opacity:.92
}
.corner-neko img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;transition:transform .2s ease, opacity .2s ease}
.corner-neko:hover img{transform:scale(1.2);opacity:1}

.win98{
  position:absolute;background:#c0c0c0;
  border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #404040;border-bottom:2px solid #404040;
  box-shadow:1px 1px 0 #808080;z-index:20
}
.hidden{display:none!important}
.titlebar{
  height:22px;display:flex;align-items:center;justify-content:space-between;padding:0 4px 0 7px;
  color:#fff;font-weight:700;background:#000080;cursor:move
}
.title{font-size:12px}
.controls{display:flex;gap:2px}
.title-btn{
  width:16px;height:16px;padding:0;border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #404040;border-bottom:1px solid #404040;
  background:#c0c0c0;color:#000;line-height:1
}
.window-body{padding:10px}

.music-window{
  position:fixed;top:6px;left:50%;transform:translateX(-50%);width:292px;z-index:45
}
.music-body{padding:5px 6px}
.retro-player{display:grid;grid-template-columns:22px 22px 22px 1fr 22px auto;gap:4px;align-items:center}
.player-btn{
  width:22px;height:22px;padding:0;border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #808080;border-bottom:2px solid #808080;background:#c0c0c0;font-size:11px;display:flex;align-items:center;justify-content:center
}
.player-track{height:10px;border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#efefef;position:relative;cursor:pointer}
.player-progress{position:absolute;left:0;top:0;bottom:0;width:0;background:#000080}
.player-time{font-family:"MS Sans Serif",Tahoma,Arial,sans-serif;font-size:10px;min-width:62px;text-align:right}

.contract-window{
  position:fixed;top:8px;right:10px;width:290px;z-index:44
}
.contract-body{padding:8px}
.text-input{
  width:100%;height:24px;padding:0 8px;border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#fff;margin-bottom:8px
}
.button{
  height:26px;border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #808080;border-bottom:2px solid #808080;
  background:#c0c0c0;color:#000;text-decoration:none;display:flex;align-items:center;justify-content:center
}
.button.small{width:82px}
.button.full{width:100%}
.button:active,.player-btn:active,.start-button:active,.title-btn:active{
  border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff
}

#window-info{width:min(760px,calc(100vw - 120px));height:calc(100vh - 84px);left:120px;top:38px;display:flex;flex-direction:column}
.info-wrap{padding:6px;flex:1;min-height:0}
.info-frame{width:100%;height:100%;border:none;background:#fff;border-top:1px solid #808080;border-left:1px solid #808080;border-right:1px solid #fff;border-bottom:1px solid #fff}

#window-recycle{width:300px;height:140px;left:180px;top:100px}
.recycle-body{display:flex;align-items:center;gap:12px;height:80px}
.recycle-body img{width:34px;height:34px;image-rendering:pixelated}

#window-library{width:min(1240px,calc(100vw - 40px));height:calc(100vh - 84px);left:48px;top:42px;display:flex;flex-direction:column}
.library-body{padding:10px;display:grid;grid-template-columns:1fr 290px;gap:12px;flex:1;min-height:0}
.icon-viewer-wrap{
  border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#efefef;min-height:0;overflow:auto;padding:12px
}
.style-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;align-content:start}
.style-card{
  min-height:98px;border:1px solid #d0d0d0;background:#f5f5f5;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px;transition:transform .1s ease
}
.style-card:hover{transform:scale(1.02)}
.style-card.active{outline:2px solid #9bbcf9;outline-offset:-2px}
.style-card img{width:50px;height:50px;object-fit:contain;image-rendering:pixelated}
.style-card span{font-size:10px;line-height:1.1;text-align:center}
.preview-panel{
  border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#c0c0c0;padding:12px;display:flex;flex-direction:column
}
.preview-title{font-weight:700;margin-bottom:10px}
.preview-box{
  width:100%;aspect-ratio:1/1;min-height:220px;border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:10px
}
.preview-box img{width:150px;height:150px;image-rendering:pixelated}
.preview-name{min-height:34px;margin-bottom:10px}

#window-chat{width:min(980px,calc(100vw - 180px));height:calc(100vh - 86px);left:220px;top:42px;display:flex;flex-direction:column}
.chat-menubar{height:24px;display:flex;align-items:center;padding:0 10px;gap:16px;background:#c0c0c0}
.chat-toolbar{display:flex;gap:8px;padding:8px 12px 6px;background:#d4d0c8}
.chat-body{padding:10px 12px 0;flex:1;min-height:0}
.chat-scroll{
  height:100%;overflow:auto;background:#fff;
  border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;
  padding:12px 14px;
  font-family:"MS Sans Serif", Tahoma, Arial, sans-serif;
  font-size:12px;line-height:1.35;
  background-image:repeating-linear-gradient(to bottom,#ffffff 0px,#ffffff 17px,#fbfbfb 18px);
}
.chat-msg{margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid #d9d9d9}
.chat-msg:last-child{border-bottom:none}
.chat-head{margin-bottom:4px}
.chat-role-user{color:#b00000;font-weight:700}
.chat-role-ai{color:#001d99;font-weight:700}
.chat-time{color:#666}
.chat-text{white-space:pre-wrap;word-break:break-word;color:#111}
.chat-typing{color:#001d99;font-weight:700}
.chat-inputbar{display:grid;grid-template-columns:1fr 130px;gap:10px;padding:10px 12px}
.chat-inputbar input{
  width:100%;height:34px;padding:0 10px;border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#fff;
  font-family:"MS Sans Serif",Tahoma,Arial,sans-serif;font-size:12px
}
.send-btn{height:34px}
.chat-statusbar{
  height:24px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;border-top:1px solid #808080
}

#window-minesweeper{width:360px;height:330px;left:160px;top:120px}
.mine-body{padding:10px}
.mine-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px;margin-bottom:8px;border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#c0c0c0}
.mine-counter{min-width:54px;background:#000;color:#ff2020;font-family:"Courier New",monospace;font-size:22px;text-align:center;padding:3px 6px}
.mine-face{width:34px;height:34px;border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #808080;border-bottom:2px solid #808080;background:#c0c0c0;font-size:18px}
.mine-board{display:grid;grid-template-columns:repeat(9,24px);grid-template-rows:repeat(9,24px);width:max-content;border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#c0c0c0}
.mine-cell{width:24px;height:24px;border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #808080;border-bottom:1px solid #808080;background:#c9c9c9;font-weight:700;display:flex;align-items:center;justify-content:center}
.mine-cell.revealed{border:1px solid #999;background:#d7d7d7}
.mine-cell.mine{background:#f0b3b3}
.mine-cell.flagged{color:#c00}

.taskbar{
  position:fixed;left:0;right:0;bottom:0;height:27px;display:flex;align-items:center;gap:4px;padding:2px;background:#c0c0c0;border-top:1px solid #fff;z-index:60
}
.start-button{
  height:23px;min-width:94px;padding:0 8px;display:flex;align-items:center;gap:6px;border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #808080;border-bottom:2px solid #808080;background:#c0c0c0;font-weight:700
}
.start-icon{width:16px;height:16px;object-fit:contain;image-rendering:pixelated}
.taskbar-windows{flex:1;display:flex;gap:4px;overflow:hidden}
.task-btn{
  height:23px;min-width:180px;padding:0 6px 0 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:2px solid #fff;border-left:2px solid #fff;border-right:2px solid #808080;border-bottom:2px solid #808080;background:#c0c0c0
}
.task-btn.active{border-top:2px solid #808080;border-left:2px solid #808080;border-right:2px solid #fff;border-bottom:2px solid #fff;background:#b9b9b9}
.task-btn-close{width:18px;height:18px;border:none;background:transparent}
.taskbar-end{
  min-width:116px;height:24px;display:flex;align-items:center;justify-content:center;gap:6px;border-top:1px solid #808080;border-left:1px solid #808080;border-right:1px solid #fff;border-bottom:1px solid #fff;background:#c0c0c0
}
.tray-tempo{width:16px;height:16px;object-fit:contain;image-rendering:pixelated;background:#000;border-radius:2px}

#oneko{z-index:2147483647!important;transform:scale(1.45);transform-origin:top left}


/* v3 polish */
.boot-screen{
  position:fixed; inset:0; background:#000; z-index:5000;
  display:flex; align-items:center; justify-content:center;
}
.boot-screen.hidden{display:none!important}
.boot-center{
  width:420px; text-align:center; color:#fff;
  font-family:"Courier New", Courier, monospace;
}
.boot-neko{
  width:84px; height:84px; object-fit:contain; image-rendering:pixelated;
  margin:0 auto 16px auto; display:block;
}
.boot-logo-text{
  font-size:34px; font-weight:700; letter-spacing:2px; margin-bottom:18px; color:#fff;
}
.boot-progress-frame{
  width:300px; height:22px; margin:0 auto 12px auto; padding:2px;
  background:#c0c0c0;
  border-top:2px solid #808080; border-left:2px solid #808080;
  border-right:2px solid #fff; border-bottom:2px solid #fff;
}
.boot-progress-fill{
  height:100%; width:0%;
  background:repeating-linear-gradient(90deg,#000080 0 16px,#1084d0 16px 32px);
  transition:width .28s linear;
}
.boot-status{
  color:#a8a8a8; font-size:14px; min-height:18px;
}
.chat-statusbar{justify-content:flex-end!important}
#chatStatus{display:none!important}
.corner-neko{
  width:42px!important; height:42px!important; right:12px!important; bottom:34px!important;
}
.titlebar{
  background:#000080!important;
  height:22px!important;
}
.title{font-size:11px!important}
#window-chat{
  width:min(980px,calc(100vw - 170px))!important;
  top:42px!important;
}
#window-library{
  width:min(1260px,calc(100vw - 28px))!important;
  top:38px!important;
}
.music-window{
  width:220px!important;
}
.contract-window{
  width:280px!important;
}
.retro-player{
  grid-template-columns:22px 22px 22px 1fr auto!important;
  gap:4px!important;
}
.player-btn{
  width:22px!important; height:22px!important; font-size:11px!important;
}
.chat-scroll{
  font-size:12px!important;
  line-height:1.35!important;
  font-family:"MS Sans Serif","Courier New",monospace!important;
}
.chat-msg{margin-bottom:10px!important; padding-bottom:6px!important}
.taskbar{height:28px!important}
.task-btn,.start-button,.taskbar-end{height:23px!important}


/* final deploy polish */
.music-window{
  z-index: 8 !important;
  width: 205px !important;
  top: 8px !important;
}
.contract-window{
  z-index: 9 !important;
  width: 255px !important;
  top: 8px !important;
  right: 8px !important;
}
.win98{
  z-index: 20;
}
.titlebar{
  background: #000080 !important;
  height: 21px !important;
  padding: 0 4px 0 7px !important;
}
#window-chat{
  width: min(930px, calc(100vw - 170px)) !important;
  height: calc(100vh - 76px) !important;
}
#window-library{
  width: min(1210px, calc(100vw - 22px)) !important;
  height: calc(100vh - 74px) !important;
}
.boot-screen{
  position: fixed;
  inset: 0;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 5000;
}
.boot-screen.hidden{
  display: none !important;
}
.boot-panel{
  width: 260px;
  text-align: center;
  font-family: "MS Sans Serif", Tahoma, Arial, sans-serif;
}
.boot-win-logo{
  width: 66px;
  height: 66px;
  image-rendering: pixelated;
  object-fit: contain;
  display: block;
  margin: 0 auto 18px auto;
}
.boot-progress-shell{
  width: 210px;
  margin: 0 auto 10px auto;
  padding: 2px;
  background: #c0c0c0;
  border-top: 2px solid #808080;
  border-left: 2px solid #808080;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.boot-progress-lane{
  height: 14px;
  background: #d4d0c8;
  border: 1px solid #808080;
  overflow: hidden;
}
.boot-progress-fill{
  height: 100%;
  width: 0%;
  background: repeating-linear-gradient(
    90deg,
    #ff0000 0 10px,
    #ff0000 10px 14px,
    #0000ff 14px 24px,
    #0000ff 24px 28px,
    #008000 28px 38px,
    #008000 38px 42px,
    #ffff00 42px 52px,
    #ffff00 52px 56px
  );
}
.boot-status{
  color: #bdbdbd;
  font-size: 11px;
  min-height: 16px;
}
.corner-neko{
  width: 38px !important;
  height: 38px !important;
}
.chat-scroll{
  font-size: 12px !important;
}
.player-btn{
  width: 20px !important;
  height: 20px !important;
}
.player-time{
  min-width: 58px !important;
}


/* ultra final win98 polish */
html, body{
  font-family: Tahoma, "MS Sans Serif", Arial, sans-serif !important;
}
.desktop-bg{
  background:#008080 !important;
}
.win98{
  background:#c0c0c0 !important;
  border-top:2px solid #dfdfdf !important;
  border-left:2px solid #dfdfdf !important;
  border-right:2px solid #404040 !important;
  border-bottom:2px solid #404040 !important;
  box-shadow:
    inset -1px -1px 0 #808080,
    inset 1px 1px 0 #ffffff,
    1px 1px 0 rgba(0,0,0,0.18) !important;
}
.titlebar{
  background:linear-gradient(90deg,#000080 0%, #0a2fb4 55%, #1084d0 100%) !important;
  height:20px !important;
  padding:0 3px 0 5px !important;
  font-size:11px !important;
}
.title{
  font-size:11px !important;
  letter-spacing:0 !important;
}
.title-btn{
  width:16px !important;
  height:14px !important;
  font-size:10px !important;
  border-top:1px solid #fff !important;
  border-left:1px solid #fff !important;
  border-right:1px solid #000 !important;
  border-bottom:1px solid #000 !important;
  box-shadow: inset -1px -1px 0 #808080, inset 1px 1px 0 #dfdfdf !important;
}
.window-body{
  padding:8px !important;
}
.chat-menubar{
  height:24px !important;
  gap:14px !important;
  padding:0 10px !important;
}
.chat-toolbar{
  gap:6px !important;
  padding:6px 10px !important;
}
.button.small{
  width:86px !important;
  height:30px !important;
}
.chat-body{
  padding:8px 10px 0 !important;
}
.chat-scroll{
  padding:10px 12px !important;
  font-family:"Courier New", monospace !important;
  font-size:12px !important;
  line-height:1.34 !important;
  background:#fff !important;
  border-top:2px solid #808080 !important;
  border-left:2px solid #808080 !important;
  border-right:2px solid #fff !important;
  border-bottom:2px solid #fff !important;
}
.chat-inputbar{
  grid-template-columns:1fr 120px !important;
  gap:8px !important;
  padding:8px 10px !important;
}
.chat-inputbar input{
  height:32px !important;
  font-size:12px !important;
}
.send-btn{
  height:32px !important;
}
.chat-statusbar{
  height:22px !important;
  padding:0 8px !important;
  font-size:11px !important;
}
.music-window{
  width:198px !important;
  top:7px !important;
}
.music-body{
  padding:4px 5px !important;
}
.retro-player{
  grid-template-columns:18px 18px 18px 1fr 18px !important;
  gap:4px !important;
}
.player-btn{
  width:18px !important;
  height:18px !important;
  font-size:9px !important;
  background:#c0c0c0 !important;
  padding:0 !important;
}
.player-track{
  height:12px !important;
  background:#efefef !important;
  border-top:2px solid #808080 !important;
  border-left:2px solid #808080 !important;
  border-right:2px solid #fff !important;
  border-bottom:2px solid #fff !important;
  position:relative;
  cursor:pointer;
}
.player-progress{
  background:repeating-linear-gradient(90deg,#000080 0 6px,#1084d0 6px 12px) !important;
}
.player-time{
  font-size:10px !important;
  min-width:52px !important;
  display:none !important;
}
.contract-window{
  width:248px !important;
  top:7px !important;
  right:7px !important;
}
.text-input{
  height:22px !important;
  margin-bottom:6px !important;
}
.taskbar{
  height:30px !important;
  padding:2px !important;
  background:#c0c0c0 !important;
  border-top:1px solid #dfdfdf !important;
  box-shadow: inset 0 1px 0 #fff !important;
}
.start-button{
  min-width:78px !important;
  height:24px !important;
  padding:0 8px !important;
  font-size:12px !important;
  gap:4px !important;
}
.start-icon{
  width:16px !important;
  height:16px !important;
}
.taskbar-windows{
  gap:3px !important;
}
.task-btn{
  min-width:165px !important;
  height:24px !important;
  font-size:11px !important;
}
.taskbar-end{
  min-width:96px !important;
  height:24px !important;
  font-size:11px !important;
}
.desktop-icons{
  top:9px !important;
  left:7px !important;
  gap:6px !important;
}
.desktop-icon{
  min-height:55px !important;
}
.desktop-icon img{
  width:32px !important;
  height:32px !important;
}
#window-chat{
  width:min(900px, calc(100vw - 180px)) !important;
  height:calc(100vh - 76px) !important;
  top:44px !important;
}
#window-library{
  width:min(1180px, calc(100vw - 20px)) !important;
  height:calc(100vh - 76px) !important;
  top:40px !important;
}
#window-info{
  top:44px !important;
  height:calc(100vh - 84px) !important;
}
#window-minesweeper{
  top:96px !important;
}
.boot-panel{
  width:240px !important;
}
.boot-win-logo{
  width:58px !important;
  height:58px !important;
  margin-bottom:14px !important;
}
.boot-progress-shell{
  width:190px !important;
}
.boot-status{
  font-size:10px !important;
}
.corner-neko{
  width:34px !important;
  height:34px !important;
  opacity:.84 !important;
}
.style-card{
  min-height:92px !important;
}
.style-card img{
  width:44px !important;
  height:44px !important;
}
.preview-panel{
  padding:10px !important;
}
.preview-box img{
  width:132px !important;
  height:132px !important;
}


/* clean final fixes */
.boot-screen{position:fixed;inset:0;background:#000;display:flex;align-items:center;justify-content:center;z-index:5000}
.boot-screen.hidden{display:none!important}
.boot-center{width:220px;text-align:center;font-family:Tahoma,"MS Sans Serif",Arial,sans-serif}
.boot-neko{width:54px;height:54px;display:block;margin:0 auto 10px auto;image-rendering:pixelated;object-fit:contain}
.boot-logo-text{color:#fff;font-size:28px;font-weight:700;letter-spacing:1px;margin-bottom:10px}
.boot-progress-wrap{
  width:180px;height:12px;margin:0 auto 8px auto;
  border-top:1px solid #404040;border-left:1px solid #404040;border-right:1px solid #c0c0c0;border-bottom:1px solid #c0c0c0;
  background:#111;overflow:hidden
}
.boot-progress-fill{
  width:0;height:100%;
  background-image:url('assets/boot-rainbow.png');
  background-repeat:repeat-x;
  image-rendering:pixelated;
}
.boot-status{color:#adadad;font-size:10px;min-height:14px}

.titlebar{background:#000080!important;height:20px!important;padding:0 3px 0 6px!important}
.win98{
  border-top:2px solid #dfdfdf!important;border-left:2px solid #dfdfdf!important;border-right:2px solid #404040!important;border-bottom:2px solid #404040!important;
  box-shadow: inset -1px -1px 0 #808080, inset 1px 1px 0 #ffffff !important;
}
.taskbar{height:28px!important;padding:2px!important;background:#c0c0c0!important;border-top:1px solid #fff!important}
.start-button,.task-btn,.taskbar-end{height:23px!important}
.music-window{width:182px!important;top:8px!important;z-index:8!important}
.contract-window{width:245px!important;top:8px!important;right:8px!important;z-index:9!important}
.retro-player{display:grid!important;grid-template-columns:18px 18px 18px 1fr 18px!important;gap:4px!important;align-items:center}
.player-btn{width:18px!important;height:18px!important;font-size:9px!important;padding:0!important}
.player-track{
  height:10px!important;position:relative;overflow:hidden;background:#efefef!important;
  border-top:2px solid #808080!important;border-left:2px solid #808080!important;border-right:2px solid #fff!important;border-bottom:2px solid #fff!important
}
.player-progress{height:100%;width:0;background-image:url('assets/boot-rainbow.png');background-repeat:repeat-x;background-size:auto 100%}
.chat-statusbar{justify-content:space-between!important}
#chatStatus{display:block!important;font-size:11px;color:#444}
#window-chat{width:min(900px,calc(100vw - 180px))!important;height:calc(100vh - 76px)!important;top:44px!important}
#window-library{width:min(1180px,calc(100vw - 20px))!important;height:calc(100vh - 76px)!important;top:40px!important}
.corner-neko{width:34px!important;height:34px!important;opacity:.84!important}


#window-arena{
  width:min(760px, calc(100vw - 180px));
  height:calc(100vh - 90px);
  left:220px;
  top:48px;
  display:flex;
  flex-direction:column;
}

.arena-body{
  display:flex;
  flex-direction:column;
  gap:8px;
  height:100%;
}

.arena-topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-family:"Courier New", monospace;
  font-size:12px;
}

.arena-area{
  position:relative;
  flex:1;
  min-height:300px;
  overflow:hidden;
  background:#000;
  border-top:2px solid #808080;
  border-left:2px solid #808080;
  border-right:2px solid #fff;
  border-bottom:2px solid #fff;
}

.arena-neko{
  position:absolute;
  width:28px;
  height:28px;
  object-fit:contain;
  image-rendering:pixelated;
  pointer-events:none;
  filter: drop-shadow(0 0 2px rgba(255,255,255,0.2));
}

.arena-cursor-marker{
  position:absolute;
  width:12px;
  height:12px;
  border:1px solid #fff;
  background:#000080;
  pointer-events:none;
}

.arena-actions{
  display:flex;
  gap:8px;
}

.arena-status{
  font-size:11px;
  color:#333;
  min-height:14px;
}
