#voronoi-menu { justify-content: flex-start; padding-top: max(50px, env(safe-area-inset-top)); overflow-y: auto; -webkit-overflow-scrolling: touch; touch-action: pan-y; }
#voronoi-game { padding: env(safe-area-inset-top) 0 max(12px, env(safe-area-inset-bottom)) 0; justify-content: flex-start; overflow: hidden; }
#voronoiPlayArea { overflow: hidden; }
.voronoi-stage {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    width: var(--voronoi-size);
    height: var(--voronoi-size);
    pointer-events: none;
}
.voronoi-stage svg {
    width: 100%; height: 100%;
    overflow: hidden;
    pointer-events: none;
}
.voronoi-cell {
    pointer-events: auto;
    cursor: pointer;
    stroke: rgba(80,110,100,.35);
    stroke-width: 1.5;
    transition: fill .15s, stroke .15s, filter .15s;
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.05));
}
.voronoi-cell:active { filter: brightness(0.9); }
/* 简单模式：统一浅米色 */
.voronoi-cell.simple {
    fill: rgba(254,252,246,.95);
}
.voronoi-cell.simple.correct {
    stroke: rgba(96,165,250,.9);
    stroke-width: 2.5;
    filter: drop-shadow(0 0 6px rgba(96,165,250,.35));
}
/* 中级 / 挑战：随机彩色 */
.voronoi-cell.colored.correct {
    stroke: rgba(255,255,255,.9);
    stroke-width: 2.5;
    filter: brightness(1.2) drop-shadow(0 0 8px rgba(255,255,255,.3));
}
.voronoi-cell.wrong {
    animation: compassShake .35s ease-in-out;
    stroke: rgba(248,113,113,.9) !important;
    stroke-width: 2.5 !important;
}
.voronoi-text {
    pointer-events: none;
    font-weight: 800;
    fill: #1e293b;
    text-anchor: middle;
    dominant-baseline: central;
}
.voronoi-center { display: none; }
.level-badge {
    padding: 6px 14px; border-radius: 16px;
    background: rgba(15,23,42,.7); border: 1px solid rgba(255,255,255,.1);
    font-size: 14px; font-weight: 700; color: #f8fafc;
}
