/* Rain Market: restrained game HUD materials over the original application.
   Native controls, state classes and all task behavior remain owned by the app. */
:root {
  --bg-page: #0c1117;
  --bg-card: #151f27;
  --bg-input: #0d171e;
  --border: #38434a;
  --accent: #d7b77e;
  --accent-2: #f2d9a8;
  --radius-lg: 8px;
  --radius-md: 6px;
  --radius-sm: 5px;
}
body { background: radial-gradient(ellipse at 60% 0,#25374055,transparent 55%),#0c1117; }
.card,.package,.license-group,.license-stat-card,.license-mobile-card,.binding-mobile-card,
.bank-box,.bank-copy-card,.checkout-summary,.profile-summary,.license-details,.license-hero,
.rs-card,.rs-stat,.rs-dialog,.rs-plan-card,.rs-filter,.rs-banner,.rs-v2-overview,
.rs-report-stats > div,.rs-login-card,.vs-card,.vs-sidebar,.vs-step-card,
.modal,.app-alert-card,.loading-popup,.trial-modal-card { border-radius: 7px; border-color: #3a454b; box-shadow: inset 0 1px #b7c6cc0b,0 10px 35px #0003; }
.card,.rs-card,.vs-card { background-image: linear-gradient(140deg,#23313955,transparent 70%); }
button,.button,.btn,.action-btn,.generate-btn,.primary-btn,.selector-btn,.auth-submit-btn,
.auth-link-btn,.rs-button,.vs-btn { border-radius: 5px; }
input:not([type=checkbox]):not([type=radio]):not([type=hidden]),textarea,select { border-radius: 5px; }
.generate-btn,.primary-btn,.auth-popup-submit,.auth-submit-btn,.app-alert-ok,
.new-project-btn,.rs-button-primary,.vs-btn--primary { background: linear-gradient(110deg,#bea471,#dfc593); color: #152027; border-color: #eddaa57d; box-shadow: inset 0 1px #fff3,0 3px 14px #c0a57312; }
.eyebrow,.rs-eyebrow,.license-kicker { letter-spacing: .15em; color: #d1b77f; }
.topbar,.license-hero,.profile-summary,.rs-page-heading { position: relative; }
.license-hero::after,.profile-summary::after { content: ''; position: absolute; width: 28px; height: 2px; background: #c7ab77; top: -1px; left: 22px; pointer-events: none; }
th,.rs-table th { background: #202c33; }
.modal-header { background: linear-gradient(90deg,#28373f99,transparent); }
.auth-center-page { background: radial-gradient(ellipse at 28% 38%,#303f4066,transparent 62%),#0c1218; }
.auth-story .cinematic-scene { height: 340px; border-radius: 5px; margin-top: 22px; }
.auth-story h1 { font-size: clamp(30px,3.4vw,43px); }
.auth-story-step > span { border-radius: 3px; background: #2b332b; }
.auth-card { border-top-color: #b99f70; }
.rs-sidebar,.workspace-sidebar { background: linear-gradient(175deg,#19232bea,#0f181fee); backdrop-filter: blur(14px); }
.rs-brand-mark,.astra-brand-symbol { border-radius: 4px; }
.rs-nav-item,.nav-item { border-radius: 4px; }
.rs-nav-item.active,.nav-item.active { background: linear-gradient(90deg,#c5ad7b25,#c5ad7b08); color: #e8d6b0; border-color: #bba77744; }
.rs-topbar,.floating-topbar { background: #111b22eb; border-color: #48545a66; }
.rs-workspace-badge,.rs-role,.rs-stat-icon,.rs-security-icon { border-radius: 4px; }
.vs-empty-art { border-radius: 8px; }
.rs-table-scroll,.account-table-scroll,.table-scroll { border-radius: 5px; }

/* The workspace retains its complete sidebar and its existing responsive menu. */
.game-workspace { --sidebar-width: 218px; }
.game-workspace .workspace-sidebar { padding: 26px 13px 0; border-right-color: #46515855; }
.game-workspace .workspace-brand { font-size: 27px; padding: 0 7px; gap: 9px; }
.game-workspace .workspace-brand small { font-size: 6px; letter-spacing: 1.35px; }
.game-workspace .astra-brand-symbol { width: 33px; height: 37px; color: #d8bd88; background: #363a2f; }
.game-workspace .new-project-btn { margin: 27px 0 26px; font-size: 11px; }
.game-workspace .nav-group-label { font-size: 10px; color: #93a3aa; margin-bottom: 10px; }
.game-workspace .nav-item { padding: 10px; gap: 9px; font-size: 12px; min-height: 44px; }
.game-workspace .workspace-nav { gap: 4px; margin-bottom: 22px; }
.game-workspace .sidebar-tip { border-radius: 5px; background: linear-gradient(145deg,#323b3066,#17232a); padding: 14px; }
.game-workspace .sidebar-tip strong,.game-workspace .sidebar-tip a { font-size: 11px; }
.game-workspace .sidebar-tip p { font-size: 10px; }
.game-workspace .profile-avatar { border-radius: 4px; }
.game-workspace .sidebar-profile { padding: 17px 3px; }
.game-workspace .workspace-topbar { min-height: 65px; padding: 12px 28px; }
.game-workspace .topbar-breadcrumb { font-size: 11px; }
.game-workspace .workspace-status { font-family: Consolas,monospace; font-size: 10px; letter-spacing: .04em; }
.game-workspace .topbar-actions .action-btn { min-height: 36px; font-size: 11px; padding: 8px 13px; }
.game-workspace .content-canvas { padding: 22px 28px 0; }
.game-workspace .center-stage { max-width: 1520px; }
.game-workspace .workspace-page-heading { margin-bottom: 17px; align-items: end; }
.game-workspace .workspace-page-heading .eyebrow { font-size: 8px; letter-spacing: 2px; color: #a7b7bd; }
.game-workspace .workspace-page-heading h1 { font-size: 22px; font-weight: 500; margin: 4px 0 2px; }
.game-workspace .workspace-page-heading p { font-size: 11px; color: #90a2af; }
.game-workspace .workspace-edition { color: #a8b5b8; font-size: 9px; padding: 5px 9px; border-radius: 3px; background: #1c292f; }
.game-workspace .creation-surface.idea-workbench { padding: 0; border: 0; background: transparent; box-shadow: none; overflow: visible; border-radius: 0; }

/* The world is the main composition, while DOM HUDs occupy its safe edges. */
.game-viewport { position: relative; height: clamp(510px,44vw,660px); overflow: hidden; isolation: isolate; border: 1px solid #74807566; border-radius: 6px; background: #101922; box-shadow: 0 24px 70px #0005,inset 0 1px #d4d6b911; }
.game-viewport::before { display: none; }
.game-viewport::after { content: ''; pointer-events: none; position: absolute; inset: 8px; z-index: 4; border: 1px solid #c5cdb712; border-radius: 2px; }
.game-viewport > .cinematic-scene { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; border: 0; border-radius: 0; background: #14202a; }
.game-viewport .cinematic-scene::before { display: none; }
.game-viewport .cinematic-scene::after { content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg,#09101570,transparent 35%),linear-gradient(0deg,#09121a96,transparent 24%,transparent 85%,#0a14193d); }
.game-viewport .scene-fallback { object-fit: cover; }
.game-viewport .scene-caption { bottom: 25px; left: 50%; transform: translateX(-50%); color: #b4c0bd; font: 8px/1.5 Consolas,monospace; letter-spacing: .14em; text-shadow: 0 1px 3px #000; white-space: nowrap; }
.game-viewport .scene-motion { right: 20px; bottom: 18px; border-radius: 3px; border-color: #899b9f44; background: #15252cde; font-size: 10px; min-height: 35px; color: #c0caca; }
.game-title { position: absolute; top: 30px; left: 30px; z-index: 3; width: min(340px,40%); pointer-events: none; }
.game-title .eyebrow { font: 10px/1.6 Consolas,monospace; color: #d8c393; letter-spacing: .15em; display: flex; gap: 9px; align-items: center; }
.game-title .eyebrow::before { content: ''; width: 18px; height: 1px; background: #c1a97b; }
.game-title h2 { font-size: clamp(26px,2.2vw,32px); line-height: 1.5; letter-spacing: -.025em; font-weight: 500; margin: 13px 0 11px; color: #f0ecdb; text-shadow: 0 2px 16px #0009; }
.game-title h2 span { color: #e0c48c; }
.game-title > p { font-size: 11px; color: #bcc6c4; line-height: 1.9; max-width: 260px; text-shadow: 0 1px 8px #000; }
.game-title .game-location { font: 8px/1.8 Consolas,monospace; letter-spacing: .16em; margin-top: 18px; color: #bca981; display: flex; align-items: center; gap: 8px; }
.game-location svg { width: 12px; height: 12px; }
.game-top-hud { position: absolute; z-index: 3; top: 22px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; gap: 16px; padding: 10px 15px; border: 1px solid #687b7c77; border-radius: 3px; background: #17272bd9; box-shadow: inset 0 1px #d8dcca08,0 8px 18px #0002; backdrop-filter: blur(12px); }
.game-top-hud span { font: 9px/1.5 Consolas,monospace; letter-spacing: .09em; color: #acbcb9; white-space: nowrap; }
.game-top-hud b { font-weight: 400; color: #dfc795; }
.game-top-hud i { width: 1px; height: 13px; background: #65797666; }
.game-map { position: absolute; top: 22px; right: 20px; z-index: 3; width: 108px; padding: 10px; background: #14242ddb; border: 1px solid #64747977; border-radius: 3px; backdrop-filter: blur(12px); }
.game-map svg { display: block; width: 100%; height: 69px; }
.game-map span { font: 7px/1.6 Consolas,monospace; color: #9eafaf; display: block; text-align: center; letter-spacing: .1em; margin-top: 5px; }
.game-quest { position: absolute; left: 26px; bottom: 26px; z-index: 3; width: 267px; padding: 16px 17px; background: linear-gradient(130deg,#1b2a2beb,#111e26eb); border: 1px solid #84908366; border-left: 2px solid #c4a876; border-radius: 3px; backdrop-filter: blur(14px); box-shadow: 0 10px 25px #0003; }
.game-quest-kicker { font: 8px/1.6 Consolas,monospace; color: #c4b082; letter-spacing: .14em; display: block; margin-bottom: 7px; }
.game-quest strong { display: block; font-size: 14px; font-weight: 500; color: #e9e5d5; margin-bottom: 3px; }
.game-quest p { font-size: 10px; line-height: 1.9; color: #a7b7ba; margin-bottom: 13px; }
.game-quest button { width: 100%; justify-content: space-between; min-height: 39px; font-size: 11px; border-radius: 3px; background: #bda679; border: 1px solid #d8c59b; color: #142027; padding: 9px 12px; }
.game-quest button:hover { background: #ddc796; }
.game-shortcuts { position: absolute; right: 22px; top: 45%; z-index: 3; display: flex; flex-direction: column; gap: 9px; }
.game-shortcut { display: flex; gap: 10px; align-items: center; background: #14252de3; border: 1px solid #7c9e9855; color: #c4d4cc; border-radius: 3px; padding: 9px 12px; min-height: 39px; font-size: 10px; backdrop-filter: blur(10px); box-shadow: 0 6px 15px #0003; cursor: pointer; }
.game-shortcut:hover { background: #29433f; color: #f0dfba; border-color: #c2aa7a; }
.game-shortcut .astra-icon { width: 16px; height: 16px; color: #c8b37f; }
.game-shortcut > span:last-child { margin-left: 6px; color: #d1b981; }
.game-coordinate { position: absolute; z-index: 2; right: 22px; bottom: 70px; font: 8px/1.6 Consolas,monospace; color: #b2beb7; letter-spacing: .1em; text-shadow: 0 1px 3px #000; pointer-events: none; }

/* All original editor nodes remain inside this native command surface. */
.command-deck { margin-top: 18px; padding: 22px 24px 20px; background: linear-gradient(120deg,#1a262e,#111c25); border: 1px solid #4d595d99; border-radius: 6px; box-shadow: 0 16px 36px #0002; }
.command-deck-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 19px; }
.command-deck-heading > div { display: flex; align-items: center; gap: 12px; }
.command-deck-heading > div > span { font: 10px Consolas,monospace; color: #ccb88b; padding: 8px; border: 1px solid #6e705255; background: #31392f66; border-radius: 3px; }
.command-deck-heading h3 { font-size: 16px; font-weight: 500; margin: 0; }
.command-deck-heading p { color: #92a4b0; font-size: 10px; margin-top: 3px; }
.command-deck-heading > span { font: 8px/1.5 Consolas,monospace; letter-spacing: .13em; color: #7e959e; }
.game-workspace .idea-workbench .prompt-composer { border-color: #45585f; border-radius: 4px; background: #0b161e; }
.game-workspace .idea-workbench .prompt-composer #objectInput { min-height: 105px; height: 105px; font-size: 14px; }
.game-workspace .composer-topline { padding-top: 15px; }
.game-workspace .idea-provider-button { border-radius: 3px; background: #172830; border-color: #3d555e; }
.game-workspace .composer-toolbar { border-radius: 0 0 4px 4px; }
.game-workspace .assistant-action-list button,.game-workspace .idea-chips button { border-radius: 3px; }
.game-workspace .idea-workbench .composer-toolbar .generate-btn { border-radius: 3px; background: linear-gradient(120deg,#baa070,#dfc491); }
.game-workspace .preview-notice { border-radius: 4px; border-color: #47645c88; background: #1c302e55; }
.game-workspace .creative-card { border-radius: 5px; }
.game-workspace .creative-card-body { background: #18262e; }
.game-workspace .creative-grid { gap: 17px; }
.game-workspace .product-art { background: radial-gradient(ellipse at 55% 20%,#7b6749,#344640 65%,#16252b); }
.game-workspace .story-art { background: linear-gradient(135deg,#182d36,#527773); }
.game-workspace .card-pill { border-radius: 3px; }
.game-workspace .workflow-guide { padding-top: 19px; padding-bottom: 19px; }
.game-workspace .workspace-footer { color: #879da4; }

@media (min-width: 1750px) {
  .game-viewport { height: 710px; }
  .game-title { top: 40px; left: 40px; }
  .game-quest { bottom: 34px; left: 34px; }
}
@media (max-width: 1180px) {
  .game-workspace { --sidebar-width: 204px; }
  .game-workspace .content-canvas { padding-left: 20px; padding-right: 20px; }
  .game-workspace .workspace-sidebar { padding-left: 10px; padding-right: 10px; }
  .game-workspace .workspace-brand { font-size: 25px; }
  .game-viewport { height: 530px; }
  .game-title { left: 23px; top: 24px; width: 45%; }
  .game-title h2 { font-size: 28px; }
  .game-top-hud { top: 17px; left: 58%; padding: 8px 11px; gap: 10px; }
  .game-top-hud span { font-size: 8px; }
  .game-map { width: 86px; right: 17px; top: 65px; }
  .game-map svg { height: 49px; }
  .game-quest { width: 233px; padding: 13px 14px; left: 20px; bottom: 22px; }
  .game-quest strong { font-size: 13px; }
  .game-shortcuts { right: 17px; top: 43%; }
  .game-shortcut { font-size: 9px; padding: 8px; }
  .game-viewport .scene-caption { display: none; }
  .command-deck { padding: 20px; }
}
@media (max-width: 940px) and (min-width: 761px) {
  .game-viewport { height: 550px; }
  .game-title { width: 65%; }
  .game-title h2 { font-size: 29px; }
  .game-top-hud { display: none; }
  .game-map { top: 20px; }
  .game-shortcuts { top: 43%; }
  .game-quest { bottom: 64px; width: 215px; }
  .game-coordinate { display: none; }
  .command-deck-heading > span { display: none; }
}
@media (max-width: 760px) {
  .game-workspace { --sidebar-width: 0px; }
  .game-workspace .workspace-sidebar { width: 252px; padding: 27px 16px 0; }
  .game-workspace .workspace-sidebar .nav-item { font-size: 12px; min-height: 44px; }
  .game-workspace .content-canvas { padding: 18px 16px 0; }
  .game-workspace .workspace-topbar { padding: 10px 15px; }
  .game-workspace .workspace-page-heading { margin-bottom: 17px; }
  .game-viewport { height: 510px; }
  .game-title { width: 58%; }
  .game-top-hud { left: auto; right: 17px; transform: none; top: 18px; }
  .game-map { top: 63px; }
  .game-quest { width: 242px; }
  .game-shortcuts { top: 47%; }
  .auth-story .cinematic-scene { height: 295px; }
}
@media (max-width: 540px) {
  .game-workspace .content-canvas { padding: 17px 12px 0; }
  .game-workspace .workspace-page-heading h1 { font-size: 22px; }
  .game-workspace .workspace-page-heading .eyebrow { font-size: 7px; letter-spacing: 1.6px; }
  .game-workspace .workspace-page-heading p { font-size: 10px; }
  .game-workspace .workspace-edition { display: none; }
  .game-viewport { height: 452px; border-radius: 4px; }
  .game-viewport .cinematic-scene::after { background: linear-gradient(180deg,#081116a6,transparent 35%,transparent 70%,#09151b9c); }
  .game-title { left: 18px; top: 18px; width: calc(100% - 85px); }
  .game-title .eyebrow { font-size: 7px; gap: 7px; }
  .game-title h2 { font-size: 24px; line-height: 1.4; margin: 9px 0 7px; }
  .game-title h2 br { display: none; }
  .game-title > p { max-width: 260px; font-size: 11px; }
  .game-title .game-location { margin-top: 9px; font-size: 7px; }
  .game-top-hud { display: none; }
  .game-map { width: 48px; padding: 5px; right: 13px; top: 17px; opacity: .85; }
  .game-map svg { height: 38px; }
  .game-map span { display: none; }
  .game-quest { left: 14px; right: 14px; bottom: 67px; width: auto; padding: 10px 12px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 3px 10px; }
  .game-quest-kicker { font-size: 7px; margin: 0; }
  .game-quest strong { font-size: 12px; margin: 0; }
  .game-quest p { display: none; }
  .game-quest button { grid-column: 2; grid-row: 1 / 3; width: auto; min-height: 44px; font-size: 10px; gap: 12px; padding: 8px 10px; }
  .game-shortcuts { left: 14px; right: auto; top: auto; bottom: 13px; flex-direction: row; gap: 5px; }
  .game-shortcut { min-height: 44px; font-size: 0; gap: 0; width: 44px; padding: 9px; justify-content: center; }
  .game-shortcut > span { display: none; }
  .game-shortcut .astra-icon { width: 17px; height: 17px; }
  .game-viewport .scene-motion { min-height: 44px; bottom: 13px; right: 13px; font-size: 10px; padding: 7px 10px; }
  .game-coordinate { display: none; }
  .command-deck { margin-top: 13px; padding: 18px 12px 15px; border-radius: 4px; }
  .command-deck-heading { margin-bottom: 14px; }
  .command-deck-heading h3 { font-size: 15px; }
  .command-deck-heading p { font-size: 11px; }
  .command-deck-heading > div { gap: 9px; }
  .command-deck-heading > span { display: none; }
  .game-workspace .idea-workbench .prompt-composer #objectInput { font-size: 16px; min-height: 116px; height: 116px; }
  .game-workspace .assistant-action-list { gap: 4px; }
  .game-workspace .assistant-action-list button { min-height: 44px; font-size: 11px; padding: 6px; }
  .game-workspace .preview-notice { padding: 13px; }
  .game-workspace .preview-notice p { font-size: 10px; }
  .auth-story .cinematic-scene { height: 260px; }
}
@media (prefers-reduced-motion: reduce) {
  .game-viewport * { transition: none !important; }
}
@media print { .game-viewport { display: none !important; } }
