.equal-main{flex:1;display:flex;flex-direction:column;align-items:center;padding:calc(var(--space-16) + var(--space-4)) var(--space-4) var(--space-8);gap:var(--space-5);max-width:760px;margin:0 auto;width:100%}.equal-intro{width:100%;max-width:480px;padding:var(--space-8);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center}.equal-intro h1{font-family:var(--font-display);font-size:var(--text-4xl);font-weight:900;letter-spacing:-.03em}.equal-intro>p{color:var(--color-text-secondary);max-width:32ch;line-height:1.6}.equal-panels{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);width:100%}.equal-panel{background:var(--color-surface-raised);border:1.5px solid var(--color-border-subtle);border-radius:var(--radius-2xl);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.equal-panel h3{font-family:var(--font-display);font-size:var(--text-sm);font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-tertiary)}.equal-panel[data-active]{border-color:var(--game-accent)}.equal-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.equal-num{aspect-ratio:1;border-radius:var(--radius-xl);background:var(--color-surface-overlay);border:2px solid var(--color-border-default);font-family:var(--font-display);font-size:var(--text-xl);font-weight:900;color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-spring)}.equal-num:hover:not(:disabled){border-color:var(--game-accent);transform:scale(1.08)}.equal-num[data-selected]{border-color:var(--game-accent);background:var(--game-accent-subtle);color:var(--game-accent);transform:scale(1.1)}.equal-num:disabled{opacity:.3;cursor:not-allowed}.equal-ops{display:flex;gap:var(--space-2);justify-content:center}.equal-op{width:40px;height:40px;border-radius:var(--radius-lg);background:var(--color-surface-overlay);border:2px solid var(--color-border-default);font-family:var(--font-display);font-size:var(--text-lg);font-weight:800;color:var(--color-text-primary);cursor:pointer;transition:all var(--duration-fast) ease}.equal-op:hover{border-color:var(--game-accent)}.equal-op[data-selected]{border-color:var(--game-accent);background:var(--game-accent-subtle);color:var(--game-accent)}.equal-equations{display:flex;flex-direction:column;gap:var(--space-2);min-height:40px}.equal-equation{display:flex;align-items:center;justify-content:space-between;background:var(--color-surface-overlay);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.equal-equation span{color:var(--color-text-primary)}.equal-equation button{background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;font-size:var(--text-lg);line-height:1;padding:0 var(--space-1)}.equal-equation button:hover{color:var(--color-status-error)}.equal-total{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:900;color:var(--game-accent);text-align:center;font-variant-numeric:tabular-nums}.equal-beam{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.equal-beam__bar{display:flex;align-items:center;gap:var(--space-3);width:100%;justify-content:center;font-family:var(--font-display);font-size:var(--text-lg);font-weight:700}.equal-beam__label{font-size:var(--text-sm);color:var(--color-text-tertiary);text-align:center}.equal-beam__balanced{color:var(--color-status-success);font-size:var(--text-sm);font-weight:700;animation:fade-up var(--duration-normal) ease}@keyframes fade-up{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.equal-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center;width:100%}@media (prefers-reduced-motion: reduce){.equal-num,.equal-beam__balanced{transition:none;animation:none}}.equal-num-placeholder{aspect-ratio:1;border-radius:var(--radius-xl);border:2px dashed var(--color-border-subtle);background:transparent;opacity:.3}
