/* 99 Club Studio · Operation Codebreaker v2 */
.tt99-play-operationgrid{width:min(100%,760px)}
.tt99-opgrid-key{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:12px;align-items:center;border:1px solid #cbdcde;background:#f5f9f9;border-radius:16px;padding:12px 14px;color:#607579}
.tt99-opgrid-key>div:first-child{display:grid;gap:2px}.tt99-opgrid-key small{font-weight:900;text-transform:uppercase;letter-spacing:.05em}.tt99-opgrid-key>div:first-child span{font-size:.76rem;line-height:1.35}
.tt99-opgrid-codekey{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px}.tt99-opgrid-codekey>span{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:4px;border:1px solid #d6e3e4;border-radius:11px;background:#fff;padding:8px 9px;text-align:center}.tt99-opgrid-codekey b{font-size:1.05rem;color:#214d51}.tt99-opgrid-codekey i{font-style:normal;color:#829497}.tt99-opgrid-codekey strong{font-size:1rem;color:#147d75}
.tt99-opgrid-cycle{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid #d2dfe1;background:#f8fbfb;border-radius:14px;padding:9px 12px;color:#607579}.tt99-opgrid-cycle small{font-weight:800}.tt99-opgrid-cycle span{font-weight:900;color:#31575b}
.tt99-opgrid-rows{display:grid;gap:9px}.tt99-oprow{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) 26px;align-items:center;gap:8px;min-height:62px;border:1px solid #d2dfe1;border-radius:15px;background:#fff;padding:9px 12px;color:#274c50;transition:.15s ease}.tt99-oprow-number{display:grid!important;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf4f4;color:#607579;font-size:.78rem;font-weight:950}.tt99-op-equation{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap}.tt99-oprow strong{font-size:1.03rem}.tt99-oprow>span{font-weight:850}
.tt99-oprow button{position:relative;width:50px;height:44px;border:2px solid #9cb9bc;border-radius:10px;background:#f7fbfb;color:#214e52;font:950 1.1rem/1 system-ui}.tt99-oprow button::after{content:attr(data-code-index);position:absolute;right:-7px;top:-8px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border-radius:999px;background:#31575b;color:#fff;border:2px solid #fff;font:800 .62rem/1 system-ui}.tt99-oprow button.is-filled{background:#e9f6f3;border-color:#4a968e}.tt99-oprow em{width:22px;font-style:normal;font-weight:950;color:#298057;text-align:center}.tt99-oprow.is-correct{background:#eff9f2;border-color:#94c9aa}.tt99-oprow.is-wrong{background:#fff3ef;border-color:#d99d87}.tt99-oprow.is-wrong em{color:#a7543d}.tt99-oprow.is-hint{box-shadow:0 0 0 3px rgba(216,168,62,.23);border-color:#d7ad54}
.tt99-opgrid-code{display:grid;gap:9px;border-radius:16px;background:#183d41;color:#fff;padding:13px 14px}.tt99-opgrid-code>small{text-transform:uppercase;letter-spacing:.08em;opacity:.72;font-weight:850}.tt99-opgrid-code>div{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.tt99-opgrid-code [data-code-slot]{display:grid;gap:2px;min-width:42px;padding:5px 7px;border-radius:9px;background:rgba(255,255,255,.09);text-align:center}.tt99-opgrid-code [data-code-slot] small{font-size:.58rem;opacity:.65}.tt99-opgrid-code [data-code-slot] b{font-size:1.15rem;letter-spacing:0}
.tt99-play-complete-snapshot .tt99-opgrid-cycle{display:none!important}
@media(max-width:520px){.tt99-opgrid-key{grid-template-columns:1fr}.tt99-opgrid-cycle{align-items:flex-start;flex-direction:column}.tt99-oprow{grid-template-columns:30px minmax(0,1fr) 22px;padding:8px 7px;gap:5px}.tt99-op-equation{gap:5px}.tt99-oprow button{width:44px;height:42px}.tt99-opgrid-codekey{grid-template-columns:repeat(2,minmax(0,1fr))}}
