
        body { font-family: sans-serif; background: #eceff1; color: #37474f; margin: 0; padding: 20px; }
        .main-wrapper { max-width: 600px; margin: 0 auto; }
        .game-card { background: white; padding: 30px; border-radius: 20px; box-shadow: 0 10px 25px rgba(0,0,0,0.1); text-align: center; margin-bottom: 20px; border: 2px solid #cfd8dc; position: relative; overflow: hidden; }
        
        /* タイトル・見出しのスタイル */
        .site-title { text-align: center; margin-bottom: 25px; }
        .site-title h1 { margin: 0; font-size: 1.8rem; color: #263238; }
        .site-title p { margin: 5px 0 0; font-size: 0.9rem; color: #607d8b; }

        .mode-selector { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin: 20px 0; }
        .mode-btn { padding: 20px 10px; border: 2px solid #2c3e50; border-radius: 15px; background: white; cursor: pointer; transition: 0.3s; }
        .mode-btn:hover { background: #f1f8e9; border-color: #4caf50; }
        .mode-btn b { font-size: 1.2rem; color: #1b5e20; }

        .grid-container { position: relative; display: inline-block; margin: 25px 0; }
        .grid { display: grid; grid-template-columns: repeat(3, 85px); gap: 12px; justify-content: center; }
        .tile { width: 85px; height: 85px; background: #fdfdfd; border: 2px solid #e0e0e0; border-radius: 15px; display: flex; align-items: center; justify-content: center; }
        .target { width: 55px; height: 55px; border-radius: 50%; box-shadow: 0 4px 6px rgba(0,0,0,0.1); }
        .blue { background: #1e88e5; }
        .red { background: #e53935; }
        
        #countdown-overlay {
            position: absolute; top: 0; left: 0; width: 100%; height: 100%;
            display: flex; align-items: center; justify-content: center;
            font-size: 6rem; font-weight: bold; color: rgba(44, 62, 80, 0.8);
            background: rgba(255, 255, 255, 0.4); z-index: 10; border-radius: 15px; pointer-events: none;
        }

        .btn-main { width: 100%; max-width: 350px; padding: 20px; font-size: 1.3rem; cursor: pointer; border-radius: 50px; border: none; background: #263238; color: white; font-weight: bold; box-shadow: 0 5px 0 #000; }
        .btn-main:active { transform: translateY(3px); box-shadow: 0 2px 0 #000; }
        .btn-main:disabled { background: #b0bec5; box-shadow: none; opacity: 0.6; }

        .age-big { font-size: 5rem; font-weight: bold; line-height: 1; margin: 15px 0; color: #d81b60; opacity: 0; animation: fadeInScale 0.8s forwards 0.3s; }
        .comparison-badge { display: inline-block; padding: 12px 24px; border-radius: 50px; font-weight: bold; margin-bottom: 10px; font-size: 1.2rem; opacity: 0; animation: fadeInUp 0.5s forwards 0.8s; }
        .better { background: #e8f5e9; color: #2e7d32; border: 2px solid #4caf50; }
        .worse { background: #ffebee; color: #c62828; border: 2px solid #ef5350; }
        .same { background: #f5f5f5; color: #616161; border: 2px solid #bdbdbd; }
        .best-badge { background: #fff9c4; color: #f57f17; border: 2px solid #fbc02d; animation: pulse 1s infinite alternate, fadeInUp 0.5s forwards 0.8s; }

        .share-buttons { margin-top: 25px; display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
        .share-buttons a { display: inline-flex; align-items: center; padding: 12px 20px; border-radius: 30px; font-size: 0.9rem; font-weight: bold; text-decoration: none; color: white; }
        .share-buttons a.twitter { background-color: #1DA1F2; }
        .share-buttons a.line { background-color: #00C300; }

        /* アドセンス用スペースのスタイル */
        .ad-space { margin: 20px 0; text-align: center; min-height: 100px; }
        .ad-label { font-size: 10px; color: #999; margin-bottom: 5px; }

        @keyframes fadeInScale { from { opacity: 0; transform: scale(0.8); } to { opacity: 1; transform: scale(1); } }
        @keyframes fadeInUp { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
        @keyframes pulse { 0% { transform: scale(1); } 100% { transform: scale(1.05); } }

        .confetti-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 20; }
        .confetti { position: absolute; width: 10px; height: 10px; animation: confetti-fall linear forwards; border-radius: 2px; }
        @keyframes confetti-fall { 0% { transform: translate(var(--x), var(--y)) rotate(0deg); opacity: 1; } 100% { transform: translate(var(--x-end), var(--y-end)) rotate(720deg); opacity: 0; } }
   
