:root{--ink: #3d3456;--bg: #fff6e9;--accent: #7cc6f2;--focus: #ff7a59;font-family:Nunito,"Baloo 2",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);-webkit-tap-highlight-color:transparent}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;overscroll-behavior:none}body{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}button{font:inherit;color:inherit;cursor:pointer}.home{min-height:100%;display:flex;flex-direction:column;padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 16px max(16px,env(safe-area-inset-left));background:radial-gradient(circle at 10% 10%,#ffe1ec 0,transparent 35%),radial-gradient(circle at 90% 20%,#d9f0ff 0,transparent 40%),radial-gradient(circle at 50% 100%,#e3f9d9 0,transparent 50%),var(--bg)}.home-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.home-title{margin:0;font-size:clamp(22px,4vw,44px);font-weight:900;letter-spacing:.5px;text-align:center;color:#ff6f91;text-shadow:0 3px 0 #fff}.home-title span{color:#4b8fe2}.home-header-right{display:flex;align-items:center;gap:10px}.icon-btn{width:64px;height:64px;border-radius:50%;border:none;background:#fff;box-shadow:0 4px #e7dccb;display:grid;place-items:center}.pad-indicator{display:grid;place-items:center;opacity:.85}.game-grid{flex:1;display:grid;gap:clamp(12px,2.5vw,28px);padding:clamp(10px,2vw,24px) 0;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(150px,1fr);align-content:center}@media(orientation:portrait){.game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.game-grid[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}@media(orientation:landscape){.game-grid[data-count="4"]{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(220px,52vh)}}.game-card{position:relative;border:6px solid #fff;border-radius:32px;box-shadow:0 8px #3d34561f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:12px;min-height:150px;transition:transform .15s ease,box-shadow .15s ease;touch-action:manipulation}.game-card:active{transform:scale(.97)}.game-card.is-focused,.game-card:focus-visible{outline:none;border-color:var(--focus);transform:scale(1.05);box-shadow:0 0 0 6px #ff7a5959,0 10px #3d345626}.game-card-emoji{font-size:clamp(64px,min(15vw,26vh),260px);line-height:1;filter:drop-shadow(0 4px 0 rgba(0,0,0,.08))}.game-card-title{font-weight:800;font-size:clamp(16px,min(2.4vw,4vh),40px);opacity:.85}.hold-btn{position:relative;width:64px;height:64px;border:none;border-radius:50%;background:#ffffffd9;display:grid;place-items:center;touch-action:none}.hold-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.hold-ring-bg{fill:none;stroke:#0000000f;stroke-width:5}.hold-ring-fg{fill:none;stroke:var(--focus);stroke-width:5;stroke-linecap:round}.hold-content{position:relative;display:grid;place-items:center}.game-host{position:fixed;inset:0;background:#bfe8ff;overflow:hidden}.game-canvas{position:absolute;inset:0;touch-action:none}.game-canvas canvas{touch-action:none;display:block}.home-btn{position:absolute;top:max(10px,env(safe-area-inset-top));left:max(10px,env(safe-area-inset-left));width:76px;height:76px;z-index:10;box-shadow:0 4px #0000001a}.game-loading,.game-error,.break-overlay{position:absolute;inset:0;display:grid;place-items:center;z-index:20}.game-loading{background:#fff6e9}.loading-emoji{font-size:140px;animation:float 1.6s ease-in-out infinite}@keyframes float{50%{transform:translateY(-18px)}}@media(prefers-reduced-motion:reduce){.loading-emoji{animation:none}}.game-error{background:#fff6e9;text-align:center;padding:24px;align-content:center}.game-error-emoji{font-size:96px;margin:0}.big-btn{border:none;background:#fff;border-radius:24px;padding:16px 28px;box-shadow:0 6px #e7dccb}.break-overlay{background:#3d345659}.break-card{background:#fff;border-radius:36px;padding:32px 48px;text-align:center;font-size:30px;font-weight:800}.break-emoji{font-size:110px}.pad-toast{position:absolute;top:16px;right:16px;z-index:15;background:#fff;border-radius:20px;padding:8px 16px;font-size:30px;box-shadow:0 4px #0000001a}.page-loading{display:grid;place-items:center;height:100%;font-size:40px}
