.oasis-ui{--forest: #234b3a;--grass: #dcefc8;--paper: #f5fbef;--soil: #d5ae59;--pollution: #785a81;--ink: #17372a;position:absolute;inset:0;pointer-events:none;color:var(--ink);font:14px/1.5 Microsoft YaHei,PingFang SC,sans-serif}.oasis-ui *,.oasis-ui *:before,.oasis-ui *:after{box-sizing:border-box}.oasis-ui h1{font-size:42px;line-height:1.2;margin:10px 0 20px;letter-spacing:4px;font-weight:900}.oasis-ui h2{font-size:20px;margin:0 24px 10px 0;line-height:1.3}.oasis-ui h3{font-size:15px;margin:0 0 4px}.oasis-ui p{margin:8px 0}.oasis-ui small{display:block;font-size:11px;line-height:1.5}.oasis-ui button{padding:9px 12px;border:2px solid var(--forest);border-radius:3px;background:var(--grass);color:var(--ink);font:700 13px/1.4 Microsoft YaHei,sans-serif;cursor:pointer}.oasis-ui button:hover:not(:disabled){background:#c5e2ae}.oasis-ui button:focus-visible{outline:3px solid var(--soil);outline-offset:2px}.oasis-ui button:disabled{color:#5d695c;background:#e6e9e1;border-color:#9ca896;cursor:not-allowed}.oasis-ui img{image-rendering:pixelated}.oasis-ui .og-topbar{position:absolute;inset:0 0 auto;background:var(--paper);border-bottom:3px solid var(--forest);pointer-events:auto;z-index:5}.oasis-ui .og-toolbar{height:69px;display:flex;align-items:center;gap:24px;padding:0 24px}.oasis-ui .og-brand{font-size:22px;font-weight:900;letter-spacing:2px;white-space:nowrap}.oasis-ui .og-brand small{font:10px/1.2 Consolas,monospace;letter-spacing:1.2px;opacity:.65}.oasis-ui[lang=en] .og-brand{font-size:20px;letter-spacing:0}.oasis-ui[lang=en] h1{font-size:36px;letter-spacing:1px}.oasis-ui .og-hud{display:flex;align-items:center;gap:22px;flex:1}.oasis-ui .og-hud span{display:grid;grid-template-columns:auto auto;align-items:center;gap:0 7px;white-space:nowrap;font-size:11px}.oasis-ui .og-hud img{width:26px;height:26px;grid-row:span 2}.oasis-ui .og-hud b{font:700 24px/1.15 Consolas,monospace;grid-column:-2 / -1}.oasis-ui .og-secondary b{font-size:20px}.oasis-ui .og-controls{display:flex;gap:6px;white-space:nowrap}.oasis-ui .og-controls button{font-size:12px;padding:8px 10px}.oasis-ui .og-controls button[data-command]:first-child{background:var(--forest);color:var(--paper)}.oasis-ui .og-status{height:24px;padding:2px 24px;display:flex;justify-content:space-between;gap:16px;background:var(--forest);color:var(--grass);font-size:11px}.oasis-ui .og-status span:first-child{color:#fff0bc;font-weight:700}.oasis-ui .og-selection{position:fixed;width:360px;max-width:calc(100vw - 24px);padding:18px;border:3px solid var(--forest);border-top:6px solid var(--soil);background:var(--paper);box-shadow:5px 5px #17372a55;pointer-events:auto;overflow-y:auto;z-index:3}.oasis-ui .og-eyebrow{margin:0 0 4px;color:#617354;font-size:11px;letter-spacing:2px}.oasis-ui .og-build-options{display:grid;gap:10px}.oasis-ui .og-tower{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #c4d5bb}.oasis-ui .og-portrait{width:32px;height:48px;justify-self:center}.oasis-ui .og-tower button{width:100%;padding:7px 10px;margin-top:5px;text-align:left}.oasis-ui .og-stats{font-size:11px;line-height:1.6}.oasis-ui .og-tower .og-stats{margin:3px 0}.oasis-ui .og-tower-heading{display:flex;align-items:center;gap:14px;margin-bottom:14px;padding-right:14px}.oasis-ui .og-tower-heading h2{margin:0;font-size:18px}.oasis-ui .og-upgrade{border-top:2px solid #c4d5bb;margin-top:12px;padding-top:12px}.oasis-ui .og-selection>button:not(.og-close),.oasis-ui .og-upgrade button,.oasis-ui .og-sell button{width:100%;margin:6px 0}.oasis-ui .og-sell button{background:#f3e6c8}.oasis-ui .og-reason{color:#704522;margin:3px 0}.oasis-ui .og-tag{color:var(--forest);font-weight:700}.oasis-ui .og-close{position:absolute;right:8px;top:8px;width:28px;height:28px;padding:0;border:0;background:transparent;font-size:23px;line-height:28px}.oasis-ui .og-overlay{position:absolute;inset:var(--hud-height) 0 0;display:grid;place-items:center;background:#17372a55;pointer-events:auto;z-index:4;padding:20px}.oasis-ui .og-dialog{position:relative;width:420px;max-width:100%;max-height:100%;overflow-y:auto;padding:32px;border:3px solid var(--forest);border-top:6px solid var(--soil);background:var(--paper);box-shadow:7px 7px #17372a55}.oasis-ui .og-menu,.oasis-ui .og-result{text-align:center}.oasis-ui .og-feedback{width:480px}.oasis-ui .og-feedback h2{padding-right:20px}.oasis-ui .og-feedback label{display:block;margin:16px 0 6px;font-weight:700}.oasis-ui .og-feedback textarea{display:block;width:100%;min-height:100px;resize:vertical;border:2px solid var(--forest);padding:10px;font:inherit;font-size:16px;color:var(--ink);background:var(--paper)}.oasis-ui .og-feedback textarea:focus-visible{outline:3px solid var(--soil);outline-offset:2px}.oasis-ui .og-feedback [role=status]{color:var(--forest)}.oasis-ui .og-core{width:96px;height:96px}.oasis-ui .og-dialog>button:not(.og-close){display:block;width:100%;margin:16px 0 8px}.oasis-ui .og-menu>button{background:var(--forest);color:var(--paper)}.oasis-ui .og-help{width:600px;padding:24px}.oasis-ui .og-guide-steps{margin:16px 0;padding-left:24px}.oasis-ui .og-guide-steps li{padding-left:6px;margin:10px 0}.oasis-ui .og-guide-steps li::marker{font:700 16px Consolas,monospace;color:var(--forest)}.oasis-ui .og-guide-steps strong,.oasis-ui .og-guide-steps span{display:block}.oasis-ui .og-guide-steps span{font-size:12px}.oasis-ui .og-guide-towers{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-block:1px solid #c4d5bb;padding:12px 0;text-align:center}.oasis-ui .og-guide-towers strong{display:block;font-size:12px}.oasis-ui .og-guide-warning{color:#69366c;font-size:12px}.oasis-ui .og-help>button:not(.og-close){background:var(--forest);color:var(--paper)}.oasis-ui dl{display:grid;grid-template-columns:1fr auto;gap:12px;text-align:left}.oasis-ui dd{margin:0;font:700 22px Consolas,monospace}.oasis-ui .og-error{display:none}.oasis-ui .og-error:not(:empty){display:block;position:absolute;top:calc(var(--hud-height) + 10px);left:50%;transform:translate(-50%);max-width:calc(100% - 32px);margin:0;padding:10px 18px;background:#f4e9f3;border:2px solid var(--pollution);color:#69366c;z-index:7}.oasis-ui .og-small-window{display:none}.oasis-ui .og-sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-height:700px){.oasis-ui .og-help{padding:18px}.oasis-ui .og-guide-steps{margin:10px 0}.oasis-ui .og-guide-steps li{margin:8px 0}.oasis-ui .og-guide-towers{padding:8px 0}.oasis-ui .og-guide-towers .og-portrait{width:24px;height:36px}}@media(max-width:1199px){.oasis-ui .og-toolbar{gap:10px;padding:0 12px}.oasis-ui .og-brand{font-size:18px;letter-spacing:0}.oasis-ui[lang=en] .og-brand{font-size:16px}.oasis-ui .og-hud{gap:8px}.oasis-ui .og-hud img{width:22px;height:22px}.oasis-ui .og-controls button{font-size:11px;padding:8px 5px}}@media(max-width:1023px),(max-height:639px){.oasis-ui .og-toolbar{height:93px;flex-direction:column;gap:0;padding:0 8px}.oasis-ui .og-brand,.oasis-ui .og-status{display:none}.oasis-ui .og-hud{width:100%;flex:none;height:45px;justify-content:center;gap:clamp(8px,3vw,30px)}.oasis-ui .og-hud span{font-size:10px}.oasis-ui .og-hud b{font-size:18px}.oasis-ui .og-hud img{width:20px;height:20px}.oasis-ui .og-controls{width:100%;min-height:44px;overflow-x:auto;gap:5px}.oasis-ui .og-controls button{flex:1 0 auto;min-height:44px;padding:6px 8px;font-size:12px;touch-action:manipulation}.oasis-ui .og-selection{width:320px;padding:10px}.oasis-ui .og-overlay{padding:8px}.oasis-ui .og-dialog{padding:16px}.oasis-ui .og-menu .og-core{display:none}.oasis-ui h1,.oasis-ui[lang=en] h1{font-size:26px;margin:6px 0 10px}.oasis-ui .og-close{width:44px;height:44px;top:0;right:0}.oasis-ui .og-selection button:not(.og-close),.oasis-ui .og-dialog>button:not(.og-close){min-height:44px}}.oasis-ui .og-card-bar{display:flex;align-items:center;gap:10px;padding:6px 24px;min-height:52px;background:var(--paper);overflow-x:auto}.oasis-ui .og-card-inventory{display:flex;gap:6px}.oasis-ui .og-card-bar button{white-space:nowrap;padding:6px 10px}.oasis-ui .og-card-bar .og-card-slot{background:#edf4e7}.oasis-ui .og-card-slot span{font:700 20px/1 Consolas,monospace;color:var(--forest)}.oasis-ui .og-card-slot b{font-family:Consolas,monospace}.oasis-ui .og-card-slot[aria-pressed=true]{border-color:var(--soil);box-shadow:inset 0 0 0 2px var(--forest)}.oasis-ui .og-card-bar .og-card-slot:disabled{opacity:.65}.oasis-ui .og-card-locked{min-height:30px;font-size:11px}.oasis-ui .og-card-ready{margin-left:auto;white-space:nowrap}.oasis-ui .og-card-overlay{inset:0;z-index:8}.oasis-ui .og-card-reveal{width:520px;text-align:center;animation:og-card-flip .42s ease-out}.oasis-ui .og-card-reveal h2{margin-right:0}.oasis-ui .og-card-reveal [data-action=language]{width:auto;margin:8px auto 0;background:transparent;font-size:11px}.oasis-ui .og-card-emblem{font:700 64px/1.5 Consolas,monospace;color:var(--forest);border-block:2px dashed var(--soil);margin:16px 0}.oasis-ui .og-awakened-portraits{display:flex;justify-content:center;gap:8px;background:var(--grass);border:2px solid var(--forest)}.oasis-ui .og-awakened-portraits img{width:30%;height:112px;object-fit:contain}.oasis-ui .og-card-target-copy{flex:1;min-width:0}.oasis-ui .og-card-target-copy strong,.oasis-ui .og-card-target-copy span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.oasis-ui .og-card-target-copy span{font-size:11px}.oasis-ui .og-card-target button{flex:0 0 auto}.oasis-ui .og-card-toast{position:absolute;top:calc(var(--hud-height) + 12px);left:50%;transform:translate(-50%);padding:10px 16px;border:2px solid var(--soil);background:var(--paper);z-index:7;animation:og-card-flip .3s ease-out}@keyframes og-card-flip{0%{opacity:0;rotate:y 80deg}to{opacity:1;rotate:y 0deg}}@media(max-width:1023px),(max-height:639px){.oasis-ui .og-card-bar{padding:4px 8px;gap:6px;overflow-x:auto}.oasis-ui .og-card-bar button{min-height:44px;padding:5px 8px;font-size:11px;touch-action:manipulation}.oasis-ui .og-card-ready{font-size:10px}.oasis-ui .og-card-locked{min-height:28px;white-space:nowrap}.oasis-ui .og-card-reveal{font-size:12px}.oasis-ui .og-card-emblem{font-size:36px;margin:6px 0}.oasis-ui .og-awakened-portraits img{height:72px}.oasis-ui .og-card-target{font-size:12px}}@media(prefers-reduced-motion:reduce){.oasis-ui .og-card-reveal,.oasis-ui .og-card-toast{animation:none}}@media(max-width:600px)and (orientation:portrait){.oasis-ui .og-small-window{display:block;position:absolute;bottom:8px;left:8px;right:8px;z-index:6;margin:0;padding:8px;background:var(--paper);border:2px solid var(--soil);text-align:center}.oasis-ui .og-overlay{padding-bottom:76px}}:root{--hud-height: 96px;font-family:system-ui,sans-serif;color:#f4f0d0;background:#234b3a}html,body{margin:0;width:100%;height:100%;overflow:hidden}#app{position:relative;width:100%;height:100dvh;overflow:hidden}#game-root{position:absolute;inset:0;overflow:hidden;line-height:0}#game-root canvas{display:block;image-rendering:pixelated}#ui-root{position:absolute;inset:0;pointer-events:none;z-index:1}
