.ae-game{display:flex;flex-direction:column;gap:var(--ct-space-4);padding:var(--ct-space-6);background-color:var(--ct-bg);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);position:relative}.ae-topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--ct-space-3);max-width:700px;width:100%;margin-inline:auto}.ae-stats{display:flex;align-items:center;gap:var(--ct-space-4);flex-wrap:wrap}.ae-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.ae-stat__label{font-size:var(--ct-text-xs);color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.5px}.ae-stat__value{font-size:var(--ct-text-lg);font-weight:600;color:var(--ct-text-main);font-variant-numeric:tabular-nums}.ae-canvas-wrap{position:relative;width:100%;max-width:700px;margin-inline:auto;background-color:var(--ct-bg);border:1px solid var(--ct-border);border-radius:var(--ct-radius-md);overflow:hidden;touch-action:none}.ae-canvas-wrap canvas{display:block;margin-inline:auto}.ae-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--ct-space-3);flex-wrap:wrap;max-width:700px;width:100%;margin-inline:auto}.ae-actions__left,.ae-actions__right{display:flex;align-items:center;gap:var(--ct-space-2);flex-wrap:wrap}.ae-level-modal{max-width:480px;width:90vw}.ae-level-grid{display:flex;flex-direction:column;gap:var(--ct-space-3)}.ae-level-group__label{font-size:var(--ct-text-sm);font-weight:600;color:var(--ct-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:var(--ct-space-2)}.ae-level-group__row{display:flex;flex-wrap:wrap;gap:var(--ct-space-2)}.ae-level-btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--ct-radius-sm);border:1px solid var(--ct-border);background-color:var(--ct-bg);font-size:var(--ct-text-sm);font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s,transform .15s}.ae-level-btn:hover{background-color:var(--ct-bg-soft);border-color:var(--ct-accent);transform:scale(1.05)}.ae-level-btn--done{background-color:var(--ct-success);color:#fff;border-color:var(--ct-success)}.ae-level-btn--current{border-color:var(--ct-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--ct-accent) 30%,transparent)}.ae-win-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#00000080;border-radius:var(--ct-radius-md);opacity:1;transition:opacity .2s;z-index:10}.ae-win-overlay[aria-hidden=true]{opacity:0;pointer-events:none}.ae-win__content{background-color:var(--ct-bg);border-radius:var(--ct-radius-lg);padding:var(--ct-space-8);text-align:center;box-shadow:var(--ct-shadow-lg);max-width:320px;width:90%}.ae-win__title{font-size:var(--ct-text-2xl);font-weight:700;color:var(--ct-success);margin-bottom:var(--ct-space-4)}.ae-win__stats{display:flex;justify-content:center;gap:var(--ct-space-8);margin-bottom:var(--ct-space-6)}.ae-win__stat{display:flex;flex-direction:column;gap:4px}.ae-win__stat-label{font-size:var(--ct-text-sm);color:var(--ct-text-muted)}.ae-win__stat-value{font-size:var(--ct-text-xl);font-weight:700;color:var(--ct-text-main)}.ae-toast{position:absolute;bottom:var(--ct-space-16);left:50%;transform:translate(-50%) translateY(8px);background-color:var(--ct-text-main);color:var(--ct-bg);padding:var(--ct-space-2) var(--ct-space-4);border-radius:var(--ct-radius-sm);font-size:var(--ct-text-sm);white-space:nowrap;opacity:1;transition:opacity .2s,transform .2s;pointer-events:none;z-index:20}.ae-toast[aria-hidden=true]{opacity:0;transform:translate(-50%) translateY(16px)}.ae-game:fullscreen{background-color:var(--ct-bg);padding:var(--ct-space-4);overflow:auto;display:flex;flex-direction:column}.ae-game:fullscreen .ae-canvas-wrap{flex:1;min-height:0;max-width:none;width:fit-content;margin-inline:auto;display:flex;align-items:center;justify-content:center}.ae-game:fullscreen .ae-canvas-wrap canvas{max-height:100%}@media(max-width:640px){.ae-game{padding:var(--ct-space-3)}.ae-stats{gap:var(--ct-space-3)}.ae-stat__value{font-size:var(--ct-text-base)}.ae-actions{justify-content:center}.ae-btn-label{display:none}.ae-actions .btn--md{padding:var(--ct-space-2);min-width:40px}}@media(max-width:400px){.ae-stats{gap:var(--ct-space-2)}}
