/* RAVEN GRID V1 · original SRADRAVEN puzzle · no third-party game assets */
.gf-raven-grid-page .rg-stage{overflow:hidden;display:grid;place-items:center;min-height:560px;background:
  radial-gradient(circle at 50% 20%,rgba(83,217,229,.10),transparent 36%),
  linear-gradient(180deg,#101a1f,#081216)}
.rg-game{width:min(100%,760px);display:grid;gap:14px;justify-items:center}
.rg-sequence-wrap{width:min(100%,680px);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #2b4650;border-radius:10px;background:#091419}
.rg-sequence-label{font-size:.69rem;letter-spacing:.11em;font-weight:900;color:#8fa7af;white-space:nowrap}
.rg-sequence{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.rg-seq-rune{width:32px;height:32px;display:grid;place-items:center;border-radius:8px;border:1px solid #365661;background:#0b1b21;color:#9db2b9;font-weight:950;box-shadow:inset 0 0 0 1px #0004}
.rg-seq-rune.done{border-color:#2e7650;background:#123321;color:#8df0b4}
.rg-seq-rune.active{border-color:#ff9558;background:#3a2114;color:#ffd2b6;box-shadow:0 0 18px rgba(255,149,88,.22)}
.rg-board-wrap{width:min(100%,680px);display:grid;place-items:center;padding:4px}
.rg-board{--rg-size:5;width:min(100%,680px);aspect-ratio:1;display:grid;grid-template-columns:repeat(var(--rg-size),minmax(0,1fr));grid-template-rows:repeat(var(--rg-size),minmax(0,1fr));gap:clamp(4px,1vw,8px);padding:clamp(7px,1.7vw,13px);border:1px solid #35515c;border-radius:18px;background:linear-gradient(145deg,#0a151a,#071014);box-shadow:0 22px 60px #0008;touch-action:none;user-select:none}
.rg-cell{position:relative;min-width:0;min-height:0;border:1px solid #29434d;border-radius:clamp(7px,1.6vw,12px);background:linear-gradient(145deg,#13242b,#0c181d);color:#dcecef;display:grid;place-items:center;padding:0;cursor:pointer;overflow:hidden;transition:transform .12s,border-color .12s,background .12s,opacity .12s}
.rg-cell:hover:not(.shadow),.rg-cell:focus-visible:not(.shadow){border-color:#56dce8;outline:none;transform:translateY(-1px)}
.rg-cell.shadow{cursor:not-allowed;border-color:#141d21;background:radial-gradient(circle at 50% 35%,#11191c,#05090b 72%);opacity:.72}
.rg-cell.shadow:after{content:"";position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,#17282e 0,#081014 62%,transparent 64%);opacity:.72}
.rg-cell.current{border-color:#58dce7;background:radial-gradient(circle at 50% 45%,#14313a,#0b1b21 70%);box-shadow:inset 0 0 0 2px #53d9e555,0 0 24px #53d9e51d;z-index:2}
.rg-cell.rune-future{border-color:#54402f;background:linear-gradient(145deg,#211810,#101518)}
.rg-cell.rune-active{border-color:#ff9558;background:radial-gradient(circle at 50% 45%,#4b2815,#161718 68%);box-shadow:0 0 23px rgba(255,149,88,.18)}
.rg-cell.rune-done{border-color:#2a5940;background:#0f2118}
.rg-rune{position:relative;z-index:3;width:50%;aspect-ratio:1;display:grid;place-items:center;transform:rotate(45deg);border:2px solid currentColor;border-radius:5px;color:#a9bbc1;background:#0b1519;box-shadow:0 0 14px #0008}
.rg-rune>span{transform:rotate(-45deg);font-weight:950;font-size:clamp(.72rem,2.9vw,1.45rem)}
.rg-cell.rune-active .rg-rune{color:#ffb07c;animation:rgPulse 1.1s ease-in-out infinite}
.rg-cell.rune-done .rg-rune{color:#78e4a5;opacity:.65}
@keyframes rgPulse{50%{transform:rotate(45deg) scale(1.08);box-shadow:0 0 24px rgba(255,149,88,.48)}}
.rg-raven{position:relative;z-index:5;width:52%;aspect-ratio:1;border-radius:50% 50% 46% 46%;display:grid;place-items:center;background:linear-gradient(145deg,#6ce6ef,#1d7780 68%,#133e44);border:2px solid #b9f7fb;color:#061013;font-size:clamp(.72rem,3vw,1.42rem);font-weight:1000;box-shadow:0 5px 13px #0009,0 0 18px #53d9e54a}
.rg-raven:before,.rg-raven:after{content:"";position:absolute;top:34%;width:42%;height:30%;background:#257f88;clip-path:polygon(0 50%,100% 0,73% 100%);z-index:-1}
.rg-raven:before{right:72%;transform:rotate(-18deg)}.rg-raven:after{left:72%;transform:scaleX(-1) rotate(-18deg)}
.rg-board.flight-armed{box-shadow:0 22px 60px #0008,0 0 0 2px rgba(255,149,88,.55),0 0 28px rgba(255,149,88,.18)}
.rg-board.flight-armed .rg-cell.flight-target{border-color:#ff9558;box-shadow:inset 0 0 0 2px rgba(255,149,88,.25)}
.rg-brand{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:#9fb4bb;font-size:.72rem;font-weight:900;letter-spacing:.09em}
.rg-brand-mark{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#102b32;border:1px solid #3b6a75;color:#67e2ec;font-weight:1000}
.rg-mobile-tip{color:#78929a;font-size:.75rem;text-align:center;min-height:1.2em}
#rgFlight[aria-pressed="true"]{background:#743718;border-color:#ff9558;box-shadow:0 0 0 2px rgba(255,149,88,.14)}
@media(max-width:650px){
  .gf-raven-grid-page .rg-stage{min-height:auto;padding:8px}
  .rg-game{gap:9px}.rg-board{gap:4px;padding:6px;border-radius:12px}.rg-cell{border-radius:7px}
  .rg-sequence-wrap{padding:8px 9px}.rg-sequence-label{font-size:.6rem}.rg-seq-rune{width:28px;height:28px}
}
@media(max-width:370px){.rg-sequence-label{display:none}.rg-sequence{width:100%;justify-content:center}}
@media(prefers-reduced-motion:reduce){.rg-cell,.rg-rune{transition:none!important;animation:none!important}}

/* RAVEN GRID V1.1 · viewport-first */
.gf-raven-grid-page .rg-stage{height:100%;min-height:0;padding:8px}
.rg-game{height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr) auto;gap:7px}
.rg-board-wrap{height:100%;min-height:0;width:100%;padding:2px}
.rg-board{width:min(100%,var(--gf-stage-h,680px),680px);max-height:100%}
@media(max-width:759px){.rg-sequence-wrap{padding:5px 7px}.rg-seq-rune{width:24px;height:24px}.rg-mobile-tip{font-size:.6rem}.rg-board{gap:3px;padding:4px}}
@media(max-height:680px){.rg-mobile-tip{display:none}}
/* V3 QA refinement: reserve vertical room for sequence + touch hint. */
.rg-board{width:min(100%,calc(var(--gf-stage-h,680px) - 76px),680px)}
@media(max-width:759px){.rg-board{width:min(100%,calc(var(--gf-stage-h,680px) - 54px),680px)}}
