/* GameNow 공통 조작법 창 — gamenow-exit 버튼 바로 위에 붙는다. */
#gamenow-guide-launcher {
  position: fixed; inset: auto max(8px, env(safe-area-inset-right)) calc(46% + 54px) auto;
  width: auto; height: auto; margin: 0; padding: 0; border: 0; background: transparent;
  z-index: 2147483000; overflow: visible; color-scheme: dark;
}
#gamenow-guide-button {
  display: block; min-height: 44px; max-width: 132px; padding: 8px 12px;
  border: 1px solid #96a8ba; border-radius: 12px; background: #172333ee; color: #fff;
  font: 700 13px/1.3 system-ui, sans-serif; cursor: pointer; touch-action: manipulation;
  box-shadow: 0 3px 12px #0005; white-space: normal;
}
#gamenow-guide-button:hover { background: #2c4058; border-color: #fff; }
#gamenow-guide-intro {
  --gg-accent: #78dba8; --gg-bg: #0d1c22;
  box-sizing: border-box; position: fixed; inset: 0; z-index: 2147482999;
  padding: clamp(16px, 4vw, 48px); overflow-y: auto;
  background: radial-gradient(circle at 20% 10%, color-mix(in srgb, var(--gg-accent) 19%, transparent), transparent 42%), var(--gg-bg);
  color: #f4f7fb; color-scheme: dark; font: 16px/1.5 system-ui, sans-serif;
}
#gamenow-guide-intro[hidden] { display: none; }
#gamenow-guide-intro .gg-entry-layout { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
  gap: clamp(24px, 5vw, 72px); align-items: center; width: min(1380px, 100%); min-height: 100%; margin: auto; }
#gamenow-guide-intro .gg-entry-media { min-width: 0; }
#gamenow-guide-intro .gg-entry-preview { position: relative; width: 100%; aspect-ratio: 16 / 9;
  border: 2px solid color-mix(in srgb, var(--gg-accent) 65%, transparent);
  border-radius: 18px; background: #050b12; overflow: hidden; box-shadow: 0 24px 70px #0009; }
#gamenow-guide-intro .gg-entry-preview img,
#gamenow-guide-intro .gg-entry-preview video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
#gamenow-guide-intro .gg-entry-preview video { opacity: 0; }
#gamenow-guide-intro .gg-entry-preview.gg-entry-playing video { opacity: 1; }
#gamenow-guide-intro .gg-entry-preview.gg-entry-playing img,
#gamenow-guide-intro .gg-entry-preview.gg-entry-playing .gg-entry-play { display: none; }
#gamenow-guide-intro .gg-entry-play { position: absolute; inset: auto 50% 18px auto; transform: translateX(50%); z-index: 1;
  width: max-content; max-width: calc(100% - 24px); padding: 10px 18px; border: 1px solid #fff9; border-radius: 100px;
  color: #fff; background: #07131bd9; font: 700 15px/1.3 system-ui, sans-serif; cursor: pointer; }
#gamenow-guide-intro .gg-entry-play:hover,
#gamenow-guide-intro .gg-entry-play:focus-visible { background: #07131b; outline: 2px solid var(--gg-accent); }
#gamenow-guide-intro .gg-entry-content { position: relative; padding-block: 40px; }
#gamenow-guide-intro .gg-entry-eyebrow { color: var(--gg-accent); font: 800 13px/1.3 system-ui, sans-serif;
  letter-spacing: .2em; }
#gamenow-guide-intro h1 { margin: 14px 0 20px; color: #fff;
  font: 900 clamp(40px, 5.4vw, 82px)/1.03 system-ui, sans-serif; letter-spacing: -.04em; }
#gamenow-guide-intro p { max-width: 54ch; margin: 0 0 32px; color: #d9e5ed;
  font: 400 clamp(17px, 1.5vw, 21px)/1.6 system-ui, sans-serif; }
#gamenow-guide-intro .gg-intro-actions { display: flex; gap: 10px; flex-wrap: wrap; }
#gamenow-guide-intro .gg-intro-actions button { flex: 1 1 150px; min-height: 52px; padding: 10px 16px;
  border: 1px solid var(--gg-accent); border-radius: 12px; background: transparent; color: #fff;
  font: 800 16px system-ui, sans-serif; cursor: pointer; }
#gamenow-guide-intro .gg-intro-actions button:first-child { background: var(--gg-accent); color: #08131a; }
#gamenow-guide-intro .gg-entry-hub { display: inline-block; margin-top: 26px; color: #b5c6d1;
  font: 600 14px/1.4 system-ui, sans-serif; text-decoration: underline; text-underline-offset: 4px; }
#gamenow-guide-intro .gg-intro-close, #gamenow-guide-dialog .gg-close {
  position: absolute; top: 8px; right: 8px; width: 44px; height: 44px; padding: 0;
  border: 0; border-radius: 10px; background: transparent; color: #fff;
  font: 30px/1 system-ui, sans-serif; cursor: pointer; }
#gamenow-guide-intro .gg-intro-close:hover, #gamenow-guide-dialog .gg-close:hover { background: #ffffff25; }
#gamenow-guide-intro[data-game="194x"] { --gg-accent: #ffd144; --gg-bg: #071729; }
#gamenow-guide-intro[data-game="arcade"] { --gg-accent: #ffd347; --gg-bg: #101219; }
#gamenow-guide-intro[data-game="golf"] { --gg-accent: #88df7b; --gg-bg: #0d2018; }
#gamenow-guide-intro[data-game="dash"] { --gg-accent: #75e8db; --gg-bg: #0a1c22; }
#gamenow-guide-intro[data-game="parcel"] { --gg-accent: #ffbf73; --gg-bg: #251a18; }
#gamenow-guide-intro[data-game="survive"] { --gg-accent: #c8abff; --gg-bg: #17132d; }
#gamenow-guide-intro[data-game="garden"] { --gg-accent: #d3ec7e; --gg-bg: #1a2717; }
#gamenow-guide-intro[data-game="beat"] { --gg-accent: #ff8faa; --gg-bg: #281423; }
#gamenow-guide-intro[data-game="terraloop"] { --gg-accent: #e9d4a4; --gg-bg: #183538; }
#gamenow-guide-intro[data-game="roboarena"] { --gg-accent: #8bd4ff; --gg-bg: #142338; }
#gamenow-guide-intro[data-game="jewel"] { --gg-accent: #ff9cc9; --gg-bg: #29172e; }
#gamenow-guide-intro[data-game="freecell"] { --gg-accent: #a6d5ff; --gg-bg: #132334; }
#gamenow-guide-intro[data-game="fivewells"] { --gg-accent: #f5cb82; --gg-bg: #1d1c27; }
#gamenow-guide-intro[data-game="jelly"] { --gg-accent: #ffa8d1; --gg-bg: #2c1a31; }
#gamenow-guide-intro[data-game="simworld"] { --gg-accent: #aad7ff; --gg-bg: #152937; }
#gamenow-guide-intro[data-game="sandfront"] { --gg-accent: #f9b985; --gg-bg: #261c1b; }
#gamenow-guide-intro[data-game="flight"] { --gg-accent: #95d7ff; --gg-bg: #122437; }
#gamenow-guide-intro[data-game="worlddrive"] { --gg-accent: #f9d9a7; --gg-bg: #132430; }
#gamenow-guide-intro[data-game="animal"] { --gg-accent: #b4e89b; --gg-bg: #193122; }
#gamenow-guide-intro[data-game="northsouth"] { --gg-accent: #ebc38b; --gg-bg: #29211c; }
body:has(#gamenow-guide-intro:not([hidden])) #gamenow-guide-launcher,
body:has(#gamenow-guide-intro:not([hidden])) #gamenow-exit-launcher,
body:has(#gamenow-guide-intro:not([hidden])) #gamenow-mobile-menu-launcher { display: none !important; }
@media (max-width: 750px) {
  #gamenow-guide-intro { padding: 72px 20px max(24px, env(safe-area-inset-bottom)); }
  #gamenow-guide-intro .gg-entry-layout { display: flex; flex-direction: column; justify-content: flex-start;
    align-items: stretch; gap: 20px; max-width: 540px; }
  #gamenow-guide-intro .gg-entry-content { padding: 0; }
  #gamenow-guide-intro h1 { margin: 8px 0 12px; font-size: clamp(36px, 10vw, 56px); }
  #gamenow-guide-intro p { margin-bottom: 20px; font-size: 16px; }
  #gamenow-guide-intro .gg-entry-hub { margin-top: 20px; }
  #gamenow-guide-intro .gg-intro-close { position: fixed; top: max(14px, env(safe-area-inset-top)); right: 20px; }
}
#gamenow-guide-dialog {
  box-sizing: border-box; position: fixed; inset: 0; width: min(760px, calc(100vw - 24px));
  max-height: calc(100dvh - 24px); margin: auto; padding: 0; overflow: hidden;
  border: 1px solid #65788d; border-radius: 20px; background: #142032; color: #f4f7fb;
  font: 15px/1.55 system-ui, sans-serif; box-shadow: 0 20px 80px #0008; color-scheme: dark;
  z-index: 2147483647; text-align: left;
}
#gamenow-guide-dialog[open] { display: flex; flex-direction: column; }
#gamenow-guide-dialog .gg-close { z-index: 1; }
#gamenow-guide-dialog::backdrop { background: #000b; }
#gamenow-guide-dialog .gg-body { overflow-y: auto; padding: 24px 26px 8px; overscroll-behavior: contain; }
#gamenow-guide-dialog .gg-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; padding-right: 30px; }
#gamenow-guide-dialog .gg-mode { display: inline-flex; flex: none; padding: 3px; border: 1px solid #3b5068; border-radius: 999px; background: #0f1a29; }
#gamenow-guide-dialog .gg-mode button {
  min-height: 36px; min-width: 64px; padding: 4px 14px; border: 0; border-radius: 999px; background: transparent; color: #b6c8da;
  font: 700 13px/1.2 system-ui, sans-serif; cursor: pointer; touch-action: manipulation;
}
#gamenow-guide-dialog .gg-mode button[aria-pressed="true"] { background: #2f7a4a; color: #fff; }
#gamenow-guide-dialog .gg-touch-note { padding: 10px 12px; border-radius: 10px; background: #1a2a3f; color: #ffd18c; font-size: 14px; }
#gamenow-guide-dialog .gg-touch-row .gg-check { display: none; }
#gamenow-guide-dialog .gg-table .gg-touch-row td.gg-touch { font-size: 14px; color: #f4f7fb; }
#gamenow-guide-dialog .gg-kicker { margin: 0; font: 700 12px/1.4 system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase; color: #9fd3a8; }
#gamenow-guide-dialog h2 { margin: 4px 0 6px; font: 800 24px/1.3 system-ui, sans-serif; color: #fff; }
#gamenow-guide-dialog h3 { margin: 18px 0 8px; font: 800 15px/1.4 system-ui, sans-serif; color: #fff; }
#gamenow-guide-dialog p { margin: 6px 0; color: #dbe4ef; }
#gamenow-guide-dialog .gg-lead { color: #b6c8da; font-size: 14px; }
#gamenow-guide-dialog .gg-goal p { color: #f4f7fb; }
#gamenow-guide-dialog .gg-steps { margin: 0; padding-left: 22px; color: #dbe4ef; }
#gamenow-guide-dialog .gg-steps li { margin: 3px 0; }
#gamenow-guide-dialog .gg-controls-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
#gamenow-guide-dialog .gg-progress { font: 700 13px/1 system-ui, sans-serif; color: #9fd3a8; }
#gamenow-guide-dialog .gg-table-wrap { overflow-x: auto; border: 1px solid #2f4258; border-radius: 12px; }
#gamenow-guide-dialog .gg-table { width: 100%; border-collapse: collapse; font-size: 14px; }
#gamenow-guide-dialog .gg-table th, #gamenow-guide-dialog .gg-table td { padding: 8px 10px; border-bottom: 1px solid #243449; vertical-align: middle; text-align: left; }
#gamenow-guide-dialog .gg-table thead th { font-size: 12px; color: #93a7bc; font-weight: 700; background: #1a2a3f; }
#gamenow-guide-dialog .gg-table tr.gg-group th { background: #18263a; color: #ffd18c; font-size: 12px; }
#gamenow-guide-dialog .gg-table tbody tr:last-child td { border-bottom: 0; }
#gamenow-guide-dialog .gg-action { display: flex; align-items: center; gap: 8px; min-width: 120px; }
#gamenow-guide-dialog .gg-check { flex: 0 0 16px; height: 16px; border-radius: 50%; border: 2px solid #4b6078; }
#gamenow-guide-dialog tr.gg-done .gg-check { border-color: #6fdc8c; background: #6fdc8c; box-shadow: inset 0 0 0 3px #142032; }
#gamenow-guide-dialog kbd {
  display: inline-block; min-width: 1.6em; margin: 2px 4px 2px 0; padding: 3px 7px; text-align: center;
  border: 1px solid #5a6f86; border-bottom-width: 3px; border-radius: 7px; background: #203149; color: #fff;
  font: 700 13px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: nowrap; transition: background .15s, border-color .15s;
}
#gamenow-guide-dialog kbd.gg-pad { border-radius: 999px; background: #2a2440; border-color: #7a6aa8; }
#gamenow-guide-dialog kbd.gg-on { background: #1f5b36; border-color: #6fdc8c; }
#gamenow-guide-dialog kbd.gg-flash { background: #6fdc8c; color: #0c1f14; }
#gamenow-guide-dialog td small { display: block; margin-top: 2px; color: #93a7bc; font-size: 12px; }
#gamenow-guide-dialog .gg-touch { color: #c9d6e4; font-size: 13px; }
#gamenow-guide-dialog .gg-mouse {
  margin: 12px 0 0; padding: 16px; border: 2px dashed #4b6078; border-radius: 12px; text-align: center;
  color: #b6c8da; font-size: 13px; cursor: crosshair; user-select: none; touch-action: none;
}
#gamenow-guide-dialog .gg-mouse:hover { border-color: #9fd3a8; color: #fff; }
#gamenow-guide-dialog .gg-pad-status { font-size: 13px; color: #c8b8f0; }
#gamenow-guide-dialog .gg-tips { margin: 12px 0 0; padding-left: 20px; color: #dbe4ef; font-size: 14px; }
#gamenow-guide-dialog .gg-again { margin-top: 14px; font-size: 12px; color: #93a7bc; }
#gamenow-guide-dialog .gg-actions { display: flex; flex-wrap: wrap; gap: 10px; padding: 14px 26px 20px; border-top: 1px solid #243449; background: #142032; }
#gamenow-guide-dialog .gg-actions button {
  box-sizing: border-box; flex: 1 1 160px; min-height: 48px; padding: 10px 14px;
  border: 1px solid #899caf; border-radius: 12px; background: #2c415a; color: #fff;
  font: 700 15px/1.4 system-ui, sans-serif; cursor: pointer; touch-action: manipulation;
}
#gamenow-guide-dialog .gg-actions .gg-primary { background: #2f7a4a; border-color: #6fdc8c; }
#gamenow-guide-dialog button:focus-visible, #gamenow-guide-button:focus-visible { outline: 3px solid #ffdc8a; outline-offset: 3px; }
#gamenow-guide-intro button:focus-visible { outline: 3px solid #ffdc8a; outline-offset: 3px; }
@media (max-width: 560px) {
  #gamenow-guide-dialog .gg-body { padding: 18px 16px 6px; }
  #gamenow-guide-dialog .gg-actions { padding: 12px 16px 16px; }
  #gamenow-guide-dialog h2 { font-size: 21px; }
  #gamenow-guide-dialog .gg-table { font-size: 13px; }
  #gamenow-guide-button { padding-inline: 10px; max-width: 110px; }
}
#gamenow-guide-dialog .gg-body:focus { outline: none; }
@media (max-width: 560px) {
  #gamenow-guide-dialog .gg-table-wrap { border: 0; }
  #gamenow-guide-dialog .gg-table thead { display: none; }
  #gamenow-guide-dialog .gg-table, #gamenow-guide-dialog .gg-table tbody { display: block; }
  #gamenow-guide-dialog .gg-table tr { display: block; margin: 0 0 8px; border: 1px solid #2f4258; border-radius: 12px; padding: 6px 4px; }
  #gamenow-guide-dialog .gg-table tr.gg-group { border: 0; padding: 6px 0 0; margin: 4px 0 2px; }
  #gamenow-guide-dialog .gg-table tr.gg-group th { background: none; padding: 0 4px; }
  #gamenow-guide-dialog .gg-table td { display: block; border: 0; padding: 3px 8px; }
  #gamenow-guide-dialog .gg-table td[data-label]:empty { display: none; }
  #gamenow-guide-dialog .gg-table td[data-label]::before { content: attr(data-label); display: block; font-size: 11px; color: #93a7bc; }
}
/* 게임 CSS(dialog p { font-size } 등)가 창 안 글자를 바꾸지 못하게 크기를 직접 준다 */
#gamenow-guide-dialog p, #gamenow-guide-dialog li { font-size: 15px; line-height: 1.55; }
#gamenow-guide-dialog .gg-lead, #gamenow-guide-dialog .gg-tips li { font-size: 14px; }
#gamenow-guide-dialog .gg-again, #gamenow-guide-dialog .gg-pad-status, #gamenow-guide-dialog .gg-mouse { font-size: 13px; }
#gamenow-guide-dialog .gg-again { font-size: 12px; }
#gamenow-guide-dialog .gg-table td, #gamenow-guide-dialog .gg-table th { font-size: 14px; line-height: 1.45; }
#gamenow-guide-dialog .gg-table thead th, #gamenow-guide-dialog .gg-table tr.gg-group th { font-size: 12px; }
@media (max-width: 560px) {
  #gamenow-guide-dialog .gg-table .gg-touch-row td.gg-touch::before { display: none; }
  #gamenow-guide-dialog .gg-table .gg-touch-row td:first-child { font-weight: 700; color: #fff; }
}
/* 가로 휴대폰: 제목 여백을 줄여 조작표가 더 보이게 */
@media (max-height: 480px) {
  #gamenow-guide-dialog { max-height: calc(100dvh - 12px); }
  #gamenow-guide-dialog .gg-body { padding: 12px 18px 6px; }
  #gamenow-guide-dialog h2 { margin: 2px 0; font-size: 19px; }
  #gamenow-guide-dialog h3 { margin: 10px 0 6px; }
  #gamenow-guide-dialog .gg-actions { padding: 8px 18px max(10px, env(safe-area-inset-bottom)); }
  #gamenow-guide-dialog .gg-actions button { min-height: 44px; }
}
